Compare commits

...
Sign in to create a new pull request.

17 commits

Author SHA1 Message Date
38fb0a23b5 pk4.yaml: Fix typo
Some checks failed
pk4 / build (push) Has been cancelled
2025-02-21 20:00:21 -08:00
a9cbc8a8a9 Disable punchangle on fall (for now)
Some checks failed
pk4 / build (push) Failing after 2m13s
2025-02-21 19:50:19 -08:00
1cf298be3b Push workflow up. 2025-02-21 19:46:04 -08:00
6460c8af73 rules/counterstrike: move precaches into their dedicated callback 2025-02-09 01:36:04 -08:00
bdfae0ce4d Client: don't show timer in modes other than CS. 2025-02-09 01:35:32 -08:00
ae515b67db CSWeapon: cache firing values at the (now) proper location. 2025-02-07 20:55:57 -08:00
db351e7b19 unpk3dir 2025-02-04 16:20:18 -08:00
a2a3d8fd8d Uninclude fx_blood.qc and fix compat. 2025-01-14 03:32:08 -08:00
26383cf05d More fixes against upstream Nuclide 2025-01-03 04:23:18 -08:00
d376999f6c Move CS gamerules into their own progs using multiprogs. Clean up scripts. 2024-10-16 23:11:24 -07:00
73638fd197
- fix team selection race condition exploit in FreeCS
- fix lots of buggy round logic
- make use of HLWeaponSelect
- move from def/ to decls/def
2024-08-14 17:10:08 -07:00
10468ee174
CSWeapon: renamed FiredWeapon() to FiredWeaponAttack() 2024-07-30 20:21:45 -07:00
68c9769ea9
Fix the dual beretta classname 2024-07-26 13:00:09 -07:00
51ad4d3588
add PROJECT file, add missing HUD binds from FHL. fix missing T spawn in eukara/test_weapons 2024-07-24 19:09:51 -07:00
dc0c57397b
Rip out more now-unused stuff. Start fixing up the buy system, make weapons fire again 2024-07-24 18:51:27 -07:00
949f3c39bc
remove reference to unused weapons. 2024-07-24 10:26:53 -07:00
1550f8cbe1
Rebase against Nuclide Develop, convert most things over 2024-07-23 17:54:58 -07:00
368 changed files with 7003 additions and 14745 deletions

BIN
.dir.tiff Normal file

Binary file not shown.

View file

@ -0,0 +1,56 @@
name: pk4
on: [ push, pull_request, workflow_dispatch ]
jobs:
build:
runs-on: docker
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 1
repository: vera/nuclide
ref: Develop
- uses: actions/checkout@v3
with:
fetch-depth: 1
repository: fn/valve
ref: Develop
path: "./valve"
- uses: actions/checkout@v3
with:
fetch-depth: 1
ref: Develop
path: "./${{ github.event.repository.name }}"
- name: apt install zip
run: |
apt update
apt install -y \
zip
- name: assemble pk4
run: make dist-pak NAME=bin GAME=${{ github.event.repository.name }}
- uses: actions/upload-artifact@v3
with:
name: build-log
path: ./build/bin-content.log
- uses: actions/forgejo-release@v2
with:
url: https://code.idtech.space
repo: "${{ github.repository }}"
tag: "${{ github.ref_name }}"
sha: "${{ github.sha }}"
direction: upload
release-dir: ./build/bin-content/${{ github.event.repository.name }}/
token: ${{ secrets.TOKEN }}
title: "Development Build"
release-notes: "Auto-generated development build, override ${{ github.event.repository.name }}/package_${{ github.event.repository.name }}.pk4."
prerelease: true
override: true
release-notes-assistant: true

5
.gitignore vendored Normal file
View file

@ -0,0 +1,5 @@
*core.txt
*.dat
*.lno
config.cfg
fte.cfg

1
PAK_NAME Normal file
View file

@ -0,0 +1 @@
package_cstrike.pk3

1
PROJECT Normal file
View file

@ -0,0 +1 @@
TacticalRetreat

View file

@ -1,39 +1,15 @@
# FreeCS
# Tactical Retreat
[As seen on phoronix.com](https://phoronix.com/scan.php?page=news_item&px=FreeCS-Open-Counter-Strike)
Clean-room reimplementation of Counter-Strike 1.5 (mod-version).
Aiming for a stable reimagining of the original mod in QuakeC.
Not aiming for accuracy, but for a smooth, exploit and bug-free
experience over the Internet.
Done in my freetime for countless reasons, but most important to me: to learn everything there is to know about one of my favorite games.
This is all 100% new, original code written by good old trial and error.
**Differences exist** and features are slowly being implemented one by one.
This allows the code to be fully free and unencumbered, unlike similar projects.
Featuring proper weapon prediction to enable stress-free netplay.
The engine you want to use to run this is FTEQW (https://www.fteqw.org), which is a project unrelated to this. It just happens to support the file-formats FreeHL needs.
Allows you to play Counter-Strike 1.5 (mod-version) with Rad-Therapy.
![Preview 1](img/preview1.jpg)
![Preview 2](img/preview2.jpg)
![Preview 3](img/preview3.jpg)
![Preview 4](img/preview4.jpg)
## Features and Improvements
- Native support for Windows/Mac/Linux/BSD and wherever else FTEQW runs on
- Better support for higher display modes and aspect ratios
- Much easier modding by having the entire logic be in modern QuakeC
- Netcode that's always improving and more advanced prediction
- Open-source code for transparent modding
- Very permissive license (ISC/BSD)
- The code doesn't rely on others work, so nobody can shut it down :-)
## Installing
To run it, all you need is [FTEQW](https://www.fteqw.org), [FreeHL](https://www.frag-net.com/pkgs/package_valve.pk3), and [the latest release .pk3 file](https://www.frag-net.com/pkgs/package_cstrike.pk3), which you save into `Half-Life/valve/` and `Half-Life/cstrike/` respectively. That's about it. You can install updates through the **Configuration > Updates** menu from here on out.
To run it, all you need is [FTEQW](https://www.fteqw.org), [Rad-Therapy](https://www.frag-net.com/pkgs/package_valve.pk3), and [the latest release .pk3 file](https://www.frag-net.com/pkgs/package_cstrike.pk3), which you save into `Half-Life/valve/` and `Half-Life/cstrike/` respectively. That's about it. You can install updates through the **Configuration > Updates** menu from here on out.
### Disclaimer
Please **do not** file bugs if you see missing/broken content **while not** using the original Half-Life and Counter-Strike 1.5 data.
@ -44,14 +20,19 @@ Here's the quick and dirty instructions for those unfamilar:
```
$ git clone https://code.idtech.space/vera/nuclide Nuclide-SDK
$ cd Nuclide-SDK
$ ./build_engine.sh # (only required if you don't have an up-to-date FTEQW & FTEQCC in your PATH)
# (only required if you don't have an up-to-date FTEQW & FTEQCC in your PATH)
$ make update
$ make fteqw
# build the menu (from valve/) then our own game-logic:
$ git clone https://code.idtech.space/fn/valve valve
$ git clone https://code.idtech.space/fn/cstrike cstrike
$ SKIP_UPDATE=1 SKIP_RADIANT=1 ./build_game.sh valve
$ SKIP_UPDATE=1 SKIP_RADIANT=1 ./build_game.sh cstrike
$ make game GAME=valve
$ make game GAME=cstrike
```
You can also issue `make` inside `valve/src/` and `cstrike/src`, but it won't build an `entities.def` file for use in Radiant (level editor family).
You can also issue `make` inside `valve/src/` and `cstrike/src`, but it won't generate some additional helper files.
** !! You need to also provide data-files !! **
@ -83,7 +64,7 @@ We've had people ask in the oddest of places for help, please don't do that.
## License
ISC License
Copyright (c) 2016-2024 Marco Cawthorne <marco@icculus.org>
Copyright (c) 2016-2025 Marco "eukara" Cawthorne <marco@icculus.org>
Permission to use, copy, modify, and distribute this software for any
purpose with or without fee is hereby granted, provided that the above

View file

@ -2,6 +2,10 @@
// this is so that users can tweak all the stuff we mostly guessed
// and can make it more like how they want it to behave.
set sk_hostage_health1 100
set sk_hostage_health2 100
set sk_hostage_health3 100
// knife: primary attack range
set sk_plr_knife_range1 48
set sk_plr_knife_range2 48
@ -92,10 +96,10 @@ set sk_plr_fiveseven_dmg1 25
set sk_plr_fiveseven_dmg2 25
set sk_plr_fiveseven_dmg3 25
// elites: bullet damage
set sk_plr_elites_dmg1 45
set sk_plr_elites_dmg2 45
set sk_plr_elites_dmg3 45
// elite: bullet damage
set sk_plr_elite_dmg1 45
set sk_plr_elite_dmg2 45
set sk_plr_elite_dmg3 45
// deagle: bullet damage
set sk_plr_deagle_dmg1 54
@ -177,7 +181,22 @@ set sk_plr_awp_dmg1 115
set sk_plr_awp_dmg2 115
set sk_plr_awp_dmg3 115
// para: bullet damage
set sk_plr_para_dmg1 35
set sk_plr_para_dmg2 35
set sk_plr_para_dmg3 35
// m249: bullet damage
set sk_plr_m249_dmg1 35
set sk_plr_m249_dmg2 35
set sk_plr_m249_dmg3 35
// hegrenade: splash damage
set sk_plr_hegrenade_dmg1 100
set sk_plr_hegrenade_dmg2 100
set sk_plr_hegrenade_dmg3 100
// hegrenade: splash radius
set sk_plr_hegrenade_radius1 100
set sk_plr_hegrenade_radius2 100
set sk_plr_hegrenade_radius3 100
// hegrenade: direct damage
set sk_plr_hegrenade_directdmg1 15
set sk_plr_hegrenade_directdmg2 15
set sk_plr_hegrenade_directdmg3 15

1
cfg/skill_manifest.cfg Normal file
View file

@ -0,0 +1 @@
exec "skill_cstrike.cfg"

View file

@ -1,22 +1,3 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-06-21 15:30+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
msgid "VGUI_TITLE_MOTD"
msgstr "Nachricht des Tages"

View file

@ -1,21 +1,4 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-06-21 15:30+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
# English (Default) Locale file
msgid "VGUI_TITLE_MOTD"
msgstr "Message Of The Day"

71
decls/def/ammo.def Normal file
View file

@ -0,0 +1,71 @@
// these have to be defined by the game.
// Counter-Strike ammo data courtesy of https://wiki.alliedmods.net/CS_weapons_information
entityDef ammo_types {
"ammo_none" "0"
"ammo_338magnum" "1"
"ammo_357sig" "2"
"ammo_45acp" "3"
"ammo_50ae" "4"
"ammo_556nato" "5"
"ammo_556natobox" "6"
"ammo_57mm" "7"
"ammo_762nato" "8"
"ammo_9mm" "9"
"ammo_buckshot" "10"
"ammo_hegrenade" "11"
"ammo_smokegrenade" "12"
"ammo_flashbang" "13"
"ammo_c4" "14"
}
entityDef ammo_names {
"ammo_none" "None"
"ammo_338magnum" ".338 Lapua Magnum"
"ammo_357sig" ".357 SIG"
"ammo_45acp" ".45 ACP"
"ammo_50ae" ".50 Action Express"
"ammo_556nato" "5.56x45mm NATO"
"ammo_556natobox" "5.56x45mm NATO BOX"
"ammo_57mm" "FN 5.7x28mm"
"ammo_762nato" "7.62x51mm NATO"
"ammo_9mm" "9x19mm Parabellum"
"ammo_buckshot" "Buckshot"
"ammo_hegrenade" "HE Grenade"
"ammo_smokegrenade" "Smoke Grenade"
"ammo_flashbang" "Flashbang"
"ammo_c4" "C4"
}
entityDef ammo_max {
"ammo_none" "0"
"ammo_338magnum" "30"
"ammo_357sig" "52"
"ammo_45acp" "100"
"ammo_50ae" "35"
"ammo_556nato" "90"
"ammo_556natobox" "200"
"ammo_57mm" "100"
"ammo_762nato" "90"
"ammo_9mm" "120"
"ammo_buckshot" "32"
"ammo_hegrenade" "1"
"ammo_smokegrenade" "1"
"ammo_flashbang" "2"
"ammo_c4" "1"
}
// these don't exist as pickups in the game, but
// might be helpful nonetheless for level designers
#include "ammo/base.def"
#include "ammo/556natobox.def"
#include "ammo/338magnum.def"
#include "ammo/9mm.def"
#include "ammo/556nato.def"
#include "ammo/762nato.def"
#include "ammo/50ae.def"
#include "ammo/45acp.def"
#include "ammo/buckshot.def"
#include "ammo/base.def"
#include "ammo/57mm.def"
#include "ammo/357sig.def"

View file

@ -0,0 +1,7 @@
entityDef ammo_338magnum
{
"editor_usage" "Ammo used by weapon_awp"
"inherit" "ammo_base"
"inv_ammo_338magnum" "10"
"price" "125"
}

View file

@ -0,0 +1,7 @@
entityDef ammo_357sig
{
"editor_usage" "Ammo used by weapon_p228"
"inherit" "ammo_base"
"inv_ammo_357sig" "13"
"price" "50"
}

7
decls/def/ammo/45acp.def Normal file
View file

@ -0,0 +1,7 @@
entityDef ammo_45acp
{
"editor_usage" "Ammo used by weapon_mac10, weapon_ump45, weapon_usp45"
"inherit" "ammo_base"
"inv_ammo_45acp" "12"
"price" "25"
}

7
decls/def/ammo/50ae.def Normal file
View file

@ -0,0 +1,7 @@
entityDef ammo_50ae
{
"editor_usage" "Ammo used by weapon_deagle"
"inherit" "ammo_base"
"inv_ammo_50ae" "7"
"price" "40"
}

View file

@ -0,0 +1,7 @@
entityDef ammo_556nato
{
"editor_usage" "Ammo used by weapon_m4a1, weapon_sg550, weapon_sg552"
"inherit" "ammo_base"
"inv_ammo_556nato" "30"
"price" "60"
}

View file

@ -0,0 +1,7 @@
entityDef ammo_556natobox
{
"editor_usage" "Ammo used by weapon_m249"
"inherit" "ammo_base"
"inv_ammo_556natobox" "30"
"price" "60"
}

7
decls/def/ammo/57mm.def Normal file
View file

@ -0,0 +1,7 @@
entityDef ammo_57mm
{
"editor_usage" "Ammo used by weapon_fiveseven, weapon_p90"
"inherit" "ammo_base"
"inv_ammo_57mm" "50"
"price" "50"
}

View file

@ -0,0 +1,7 @@
entityDef ammo_762nato
{
"editor_usage" "Ammo used by weapon_aug, weapon_famas, weapon_g3sg1, weapon_galil, weapon_ak47, weapon_scout"
"inherit" "ammo_base"
"inv_ammo_762nato" "30"
"price" "80"
}

7
decls/def/ammo/9mm.def Normal file
View file

@ -0,0 +1,7 @@
entityDef ammo_9mm
{
"editor_usage" "Ammo used by weapon_elites, weapon_glock18, weapon_mp5navy, weapon_tmp"
"inherit" "ammo_base"
"inv_ammo_9mm" "30"
"price" "20"
}

9
decls/def/ammo/base.def Normal file
View file

@ -0,0 +1,9 @@
entityDef ammo_base
{
"spawnclass" "NSItem"
"snd_acquire" "ammo.pickup"
"snd_respawn" "ammo.respawn"
"mins" "-16 -16 0"
"maxs" "16 16 16"
"model" "models/w_backpack.mdl"
}

View file

@ -0,0 +1,7 @@
entityDef ammo_buckshot
{
"editor_usage" "Ammo used by weapon_m3, weapon_xm1014"
"inherit" "ammo_base"
"inv_ammo_buckshot" "8"
"price" "65"
}

16
decls/def/hostage.def Normal file
View file

@ -0,0 +1,16 @@
entityDef hostage_entity
{
"spawnclass" "CSHostage"
"model" "models/hostage.mdl"
"netname" "Hostage"
"health" "skill:hostage_health"
"mins" "-16 -16 0"
"maxs" "16 16 72"
"eye_height" "64"
"team" "0"
"propdata" "actor_human"
"follow_on_use" "1"
"speed_walk" "64"
"speed_run" "364"
}

6
decls/def/items.def Normal file
View file

@ -0,0 +1,6 @@
#include "items/c4.def"
#include "items/suit.def"
#include "items/kevlar_helmet.def"
#include "items/nightvision.def"
#include "items/defuse.def"
#include "items/kevlar.def"

12
decls/def/items/c4.def Normal file
View file

@ -0,0 +1,12 @@
entityDef item_c4
{
"spawnclass" "CSBombEntity"
"model" "models/w_c4.mdl"
"model_led" "sprites/ledglow.spr"
"snd_beep1" "weapon_c4bomb.beep1"
"snd_beep2" "weapon_c4bomb.beep2"
"snd_beep3" "weapon_c4bomb.beep3"
"snd_beep4" "weapon_c4bomb.beep4"
"snd_beep5" "weapon_c4bomb.beep5"
"snd_planted" "c4.plant"
}

View file

@ -0,0 +1,10 @@
entityDef item_defuse
{
"spawnclass" "ncItem"
"model" "models/w_thighpack.mdl"
"mins" "-16 -16 0"
"maxs" "16 16 16"
"snd_acquire" "buy.weapon"
"snd_respawn" "item.respawn"
"inv_carry" "1"
}

View file

@ -0,0 +1,11 @@
// actually armor
entityDef item_kevlar
{
"spawnclass" "ncItem"
"model" "models/w_kevlar.mdl"
"mins" "-16 -16 0"
"maxs" "16 16 16"
"snd_acquire" "buy.kevlar"
"snd_respawn" "item.respawn"
"inv_armor" "100"
}

View file

@ -0,0 +1,11 @@
// other equipment
entityDef item_kevlar_helmet
{
"spawnclass" "ncItem"
"model" "models/w_kevlar.mdl"
"mins" "-16 -16 0"
"maxs" "16 16 16"
"snd_acquire" "buy.kevlar"
"snd_respawn" "item.respawn"
"inv_carry" "1"
}

View file

@ -0,0 +1,10 @@
entityDef item_nightvision
{
"spawnclass" "ncItem"
"model" "models/w_backpack.mdl"
"mins" "-16 -16 0"
"maxs" "16 16 16"
"snd_acquire" "buy.weapon"
"snd_respawn" "item.respawn"
"inv_carry" "1"
}

11
decls/def/items/suit.def Normal file
View file

@ -0,0 +1,11 @@
// used in the training mission, HUD etc.
entityDef item_suit
{
"spawnclass" "ncItem"
"model" "models/w_kevlar.mdl"
"mins" "-16 -16 0"
"maxs" "16 16 16"
"snd_acquire" "buy.kevlar"
"snd_respawn" "item.respawn"
"inv_carry" "1"
}

1
decls/def/monsters.def Normal file
View file

@ -0,0 +1 @@
// we have none! go away!

106
decls/def/player.def Normal file
View file

@ -0,0 +1,106 @@
entityDef player
{
"spawnclass" "CSPlayer"
"snd_stepladderLeft" "step_ladder.left"
"snd_stepladderRight" "step_ladder.right"
"snd_fall" "Player.FallDamage"
"snd_landHard" "Player.LightFall"
"snd_death" "Player.Death"
"snd_airGaspLight" "Player.GaspLight"
"snd_pain" "Player.Pain"
"snd_airGaspHeavy" "Player.GaspHeavy"
"snd_waterExit" "Player.WaterExit"
"snd_waterEnter" "Player.WaterEnter"
"snd_useDeny" "Player.DenyWeaponSelection"
"snd_useSuccess" "Player.WeaponSelected"
"snd_waterWade" "Player.Wade"
"snd_waterSwim" "Player.Swim"
}
entityDef player_mp
{
"inherit" "player"
"def_precache" "weapon_ak47"
"def_precache" "weapon_aug"
"def_precache" "weapon_awp"
"def_precache" "weapon_c4"
"def_precache" "weapon_deagle"
"def_precache" "weapon_elite"
"def_precache" "weapon_famas"
"def_precache" "weapon_fiveseven"
"def_precache" "weapon_flashbang"
"def_precache" "weapon_g3sg1"
"def_precache" "weapon_galil"
"def_precache" "weapon_glock18"
"def_precache" "weapon_hegrenade"
"def_precache" "weapon_knife"
"def_precache" "weapon_m249"
"def_precache" "weapon_m3"
"def_precache" "weapon_m4a1"
"def_precache" "weapon_mac10"
"def_precache" "weapon_mp5navy"
"def_precache" "weapon_p228"
"def_precache" "weapon_p90"
"def_precache" "weapon_scout"
"def_precache" "weapon_sg550"
"def_precache" "weapon_sg552"
"def_precache" "weapon_smokegrenade"
"def_precache" "weapon_tmp"
"def_precache" "weapon_ump45"
"def_precache" "weapon_usp"
"def_precache" "weapon_xm1014"
}
entityDef player_terrorist
{
"inherit" "player_mp"
"ammo_9mm" "40"
"current_weapon" "1"
"item" "item_suit"
"spawnpoint" "info_player_deathmatch"
"team" "1"
"weapon" "weapon_knife,weapon_glock18"
"model_class1" "models/player/terror/terror.mdl"
"model_class2" "models/player/leet/leet.mdl"
"model_class3" "models/player/arctic/arctic.mdl"
"model_class4" "models/player/guerilla/guerilla.mdl"
}
entityDef player_counterterrorist
{
"inherit" "player_mp"
"ammo_45acp" "24"
"current_weapon" "1"
"item" "item_suit"
"spawnpoint" "info_player_start"
"team" "2"
"weapon" "weapon_knife,weapon_usp"
"model_class1" "models/player/urban/urban.mdl"
"model_class2" "models/player/gsg9/gsg9.mdl"
"model_class3" "models/player/sas/sas.mdl"
"model_class4" "models/player/gign/gign.mdl"
}
entityDef player_vip
{
"inherit" "player_mp"
"ammo_45acp" "24"
"current_weapon" "1"
"item" "item_suit"
"model" "models/player/vip/vip.mdl"
"team" "2"
"weapon" "weapon_knife,weapon_usp"
}
entityDef player_csdm
{
"inherit" "player_mp"
"ammo_45acp" "24"
"current_weapon" "1"
"item" "item_suit"
"model" "models/player/vip/vip.mdl"
"weapon" "weapon_knife,weapon_usp"
}

15
decls/def/projectiles.def Normal file
View file

@ -0,0 +1,15 @@
entityDef projectile_bullet_base
{
"spawnclass" "CSProjectile"
"is_bullet" "1"
"decal_impact" "Impact.BigShot"
"detonate_on_world" "1"
}
entityDef projectile_bullet_shotgun
{
"spawnclass" "ncProjectile"
"is_bullet" "1"
"decal_impact" "Impact.BigShot"
"detonate_on_world" "1"
}

26
decls/def/spawns.def Normal file
View file

@ -0,0 +1,26 @@
entityDef info_player_start
{
"editor_mins" "-16 -16 -36"
"editor_maxs" "16 16 36"
"editor_description" "Singleplayer Spawn Point"
"editor_color" "1 0 0"
"spawnclass" "ncSpawnPoint"
}
entityDef info_player_deathmatch
{
"editor_mins" "-16 -16 -36"
"editor_maxs" "16 16 36"
"editor_description" "Deathmatch Spawn Point"
"editor_color" "1 0 0"
"spawnclass" "ncSpawnPoint"
}
entityDef info_player_coop
{
"editor_mins" "-16 -16 -36"
"editor_maxs" "16 16 36"
"editor_description" "Cooperative Spawn Point"
"editor_color" "1 0 0"
"spawnclass" "ncSpawnPoint"
}

28
decls/def/weapons.def Normal file
View file

@ -0,0 +1,28 @@
#include "weapons/csbase.def"
#include "weapons/ak47.def"
#include "weapons/aug.def"
#include "weapons/awp.def"
#include "weapons/c4.def"
#include "weapons/deagle.def"
#include "weapons/elite.def"
#include "weapons/fiveseven.def"
#include "weapons/flashbang.def"
#include "weapons/g3sg1.def"
#include "weapons/glock18.def"
#include "weapons/hegrenade.def"
#include "weapons/knife.def"
#include "weapons/m249.def"
#include "weapons/m3.def"
#include "weapons/m4a1.def"
#include "weapons/mac10.def"
#include "weapons/mp5navy.def"
#include "weapons/p228.def"
#include "weapons/p90.def"
#include "weapons/scout.def"
#include "weapons/sg550.def"
#include "weapons/sg552.def"
#include "weapons/smokegrenade.def"
#include "weapons/tmp.def"
#include "weapons/ump45.def"
#include "weapons/usp.def"
#include "weapons/xm1014.def"

View file

@ -0,0 +1,54 @@
entityDef weapon_ak47
{
"inherit" "CSBaseRifle"
"editor_usage" "AK-47 Weapon - Uses ammo_762nato"
"model" "models/w_ak47.mdl"
"model_view" "models/v_ak47.mdl"
"inv_name" "AK-47 Weapon"
"def_fireInfo" "fireInfo_ak47"
"clipSize" "30"
"act_fire" "3,4,5"
"act_reload" "1"
"act_draw" "2"
"act_idle" "0"
"snd_fire" "Weapon_AK47.Single"
"speed_mod" "0.884"
"price" "2500"
"crossMinDist" "4"
"crossDeltaDist" "4"
"accuracyDivisor" "30"
"accuracyMovementPenalty" "3"
"accuracyMultiplier" "1.5"
"rangeModifier" "2.375"
"penetrationPower" "1.0"
"bulletStrength" "1.2"
"multiplierShots" "1.1"
"multiplierStrength" "0.92"
"multiplierInaccuracy" "0.5"
"hudSlot" "0"
"hudSlotPos" "7"
"weight" "25"
}
entityDef projectile_ak47
{
"inherit" "projectile_bullet_base"
"damage" "skill:plr_ak47_dmg"
}
entityDef fireInfo_ak47
{
"def_onFire" "projectile_ak47"
"ammoType" "ammo_762nato"
"ammoRequired" "1"
"ammoPerShot" "1"
"fireRate" ".0975"
"punchAngle" "-2 0 0"
"model_flash" "sprites/muzzleflash2.spr"
}

54
decls/def/weapons/aug.def Normal file
View file

@ -0,0 +1,54 @@
entityDef weapon_aug
{
"inherit" "CSBaseRifle"
"editor_usage" "Steyr AUG Weapon - Uses ammo_762nato"
"model" "models/w_aug.mdl"
"model_view" "models/v_aug.mdl"
"inv_name" "Steyr AUG Weapon"
"def_fireInfo" "fireInfo_aug"
"clipSize" "30"
"act_fire" "3,4,5"
"act_reload" "1"
"act_draw" "2"
"act_idle" "0"
"snd_fire" "Weapon_AUG.Single"
"speed_mod" "0.96"
"price" "3500"
"crossMinDist" "3"
"crossDeltaDist" "3"
"accuracyDivisor" "35"
"accuracyMovementPenalty" "2"
"accuracyMultiplier" "1"
"rangeModifier" "2.125"
"penetrationPower" "1.0"
"bulletStrength" "1.03"
"multiplierShots" "1.1"
"multiplierStrength" "1.1"
"multiplierInaccuracy" "1.0"
"hudSlot" "0"
"hudSlotPos" "10"
"weight" "25"
}
entityDef projectile_aug
{
"inherit" "projectile_bullet_base"
"damage" "skill:plr_aug_dmg"
}
entityDef fireInfo_aug
{
"def_onFire" "projectile_aug"
"ammoType" "ammo_762nato"
"ammoRequired" "1"
"ammoPerShot" "1"
"fireRate" "0.0825f"
"punchAngle" "-2 0 0"
"model_flash" "sprites/muzzleflash2.spr"
}

64
decls/def/weapons/awp.def Normal file
View file

@ -0,0 +1,64 @@
entityDef weapon_awp
{
"inherit" "CSBaseRifle"
"editor_usage" "AWP (AI Arctic Warfare/Magnum) Weapon - Uses ammo_338magnum"
"model" "models/w_awp.mdl"
"model_view" "models/v_awp.mdl"
"inv_name" "AWP (AI Arctic Warfare/Magnum) Weapon"
"def_fireInfo" "fireInfo_awp"
"clipSize" "5"
"act_fire" "1,2,3"
"actAltFire" ""
"act_holster" ""
"act_reload" "4"
"act_draw" "5"
"act_idle" "0"
"snd_fire" "Weapon_AWP.Single"
"speed_mod" "0.84"
"price" "4750"
"crossMinDist" "8"
"crossDeltaDist" "3"
"accuracyDivisor" "-1"
"accuracyMovementPenalty" "1"
"accuracyMultiplier" "1"
"rangeModifier" "1.375"
"penetrationPower" "2.0"
"bulletStrength" "1"
"multiplierShots" "1.0"
"multiplierStrength" "1.0"
"multiplierInaccuracy" "1.0"
"hudSlot" "0"
"hudSlotPos" "12"
"weight" "30"
"zoomDuration" "0.075"
"zoomFov" "20"
"zoomFovStep" "5"
"zoomFovMin" "5"
"zoomFovMax" "40"
"snd_raise_scope" "Default.Zoom"
"snd_lower_scope" "Default.Zoom"
}
entityDef projectile_awp
{
"inherit" "projectile_bullet_base"
"damage" "skill:plr_awp_dmg"
}
entityDef fireInfo_awp
{
"def_onFire" "projectile_awp"
"ammoType" "ammo_338magnum"
"ammoRequired" "1"
"ammoPerShot" "1"
"fireRate" "1.2"
"punchAngle" "-5 0 0"
"model_flash" "sprites/muzzleflash2.spr"
}

55
decls/def/weapons/c4.def Normal file
View file

@ -0,0 +1,55 @@
entityDef weapon_c4
{
"editor_color" ".3 .3 1"
"editor_mins" "-16 -16 -16"
"editor_maxs" "16 16 16"
"editor_usage" "C4 Bomb Weapon, Bomb Defusal Gamemode Entity"
"editor_rotatable" "1"
"spawnclass" "CSWeapon"
"model" "models/w_backpack.mdl"
"model_view" "models/v_c4.mdl"
"snd_acquire" "weapon.pickup"
"snd_respawn" "item.respawn"
"ammoRequired" "1"
"def_fireInfo" "fireInfo_c4Plant"
"inv_name" "C4 Bomb Weapon"
"ammoType" "ammo_c4"
"inv_ammo_c4" "1"
"trigger_delay" "3" // takes three seconds to charge
"act_fire" "2"
"act_fireFailed" "0"
"act_draw" "1"
"act_idle" "0"
"act_delay" "3"
"snd_fire" "C4.PlantSound"
"speed_mod" "1.0"
"hudSlot" "4"
"hudSlotPos" "0"
"weight" "0"
"team" "1" // Terrorists only!
"onlyInBombZone" "1"
"removeOnEmpty" "1"
}
entityDef fireInfo_c4Plant
{
"def_onFire" "projectile_c4bomb"
"testDistance" "-64"
"chargeTime" "3"
}
entityDef projectile_c4bomb
{
"spawnclass" "ncAttack"
"def_plant" "item_c4"
"plant" "1"
"plantOnGround" "1"
"plantDistance" "64"
"plantOffset" "8"
}

View file

@ -0,0 +1,52 @@
entityDef CSBaseMelee
{
"spawnclass" "CSWeapon"
"editor_color" ".3 .3 1"
"editor_mins" "-16 -16 -16"
"editor_maxs" "16 16 16"
"editor_rotatable" "1"
"snd_acquire" "Player.PickupWeapon"
}
entityDef CSBasePistol
{
"spawnclass" "CSWeapon"
"editor_color" ".3 .3 1"
"editor_mins" "-16 -16 -16"
"editor_maxs" "16 16 16"
"editor_rotatable" "1"
"semiAuto" "1"
"snd_acquire" "Player.PickupWeapon"
"snd_empty" "Default.ClipEmpty_Pistol"
"csWeaponMode" "1"
"model_flash" "sprites/muzzleflash1.spr"
}
entityDef CSBaseRifle
{
"spawnclass" "CSWeapon"
"editor_color" ".3 .3 1"
"editor_mins" "-16 -16 -16"
"editor_maxs" "16 16 16"
"editor_rotatable" "1"
"snd_acquire" "Player.PickupWeapon"
"snd_empty" "Default.ClipEmpty_Rifle"
"csWeaponMode" "1"
"model_flash" "sprites/muzzleflash3.spr"
}
entityDef CSBaseShotgun
{
"spawnclass" "CSWeapon"
"editor_color" ".3 .3 1"
"editor_mins" "-16 -16 -16"
"editor_maxs" "16 16 16"
"editor_rotatable" "1"
"snd_acquire" "Player.PickupWeapon"
"csWeaponMode" "1"
"model_flash" "sprites/muzzleflash4.spr"
}

View file

@ -0,0 +1,55 @@
entityDef weapon_deagle
{
"inherit" "CSBasePistol"
"editor_usage" "Desert Eagle .50 AE Weapon - Uses ammo_50ae"
"model" "models/w_deagle.mdl"
"model_view" "models/v_deagle.mdl"
"inv_name" "Desert Eagle .50 AE Weapon"
"def_fireInfo" "fireInfo_deagle"
"clipSize" "7"
"act_fire" "1,2"
"act_fireLast" "3"
"act_reload" "4"
"act_draw" "5"
"act_idle" "0"
"snd_fire" "Weapon_DEagle.Single"
"speed_mod" "1.0"
"price" "650"
"crossMinDist" "8"
"crossDeltaDist" "3"
"accuracyDivisor" "55"
"accuracyMovementPenalty" "1.5"
"accuracyMultiplier" "1.0"
"accuracyAdd" "0.005"
"rangeModifier" "1.875"
"penetrationPower" "1.0"
"bulletStrength" "0.5"
"multiplierShots" "10"
"multiplierStrength" "0.35"
"multiplierInaccuracy" "0.5"
"hudSlot" "1"
"hudSlotPos" "2"
"weight" "7"
}
entityDef projectile_deagle
{
"inherit" "projectile_bullet_base"
"damage" "skill:plr_deagle_dmg"
}
entityDef fireInfo_deagle
{
"def_onFire" "projectile_deagle"
"ammoType" "ammo_50ae"
"ammoRequired" "1"
"ammoPerShot" "1"
"fireRate" "0.2"
"model_flash" "sprites/muzzleflash2.spr"
}

View file

@ -0,0 +1,66 @@
entityDef weapon_elite
{
"inherit" "CSBasePistol"
"editor_usage" "Dual Beretta 96G (Elites) Weapon - Uses ammo_9mm"
"model" "models/w_elite.mdl"
"model_view" "models/v_elite.mdl"
"inv_name" "Dual Beretta 96G (Elites) Weapon"
"def_fireInfo" "fireInfo_elite"
"def_altFireInfo" "fireInfo_elite_alt"
"clipSize" "30"
"act_fire" "2,3,4,5,6"
"act_fireLast" "7"
"act_reload" "14"
"act_draw" "15"
"act_idle" "0"
"snd_fire" "Weapon_ELITE.Single"
"snd_altfire" "Weapon_ELITE.Single"
"altAlternates" "1"
"speed_mod" "1.0"
"price" "1000"
"crossMinDist" "4"
"crossDeltaDist" "3"
"accuracyDivisor" "150"
"accuracyMovementPenalty" "1"
"accuracyMultiplier" "1"
"accuracyAdd" "0.002"
"rangeModifier" "1.875"
"penetrationPower" "1.0"
"bulletStrength" "0.9"
"multiplierShots" "3"
"multiplierStrength" "0.85"
"multiplierInaccuracy" "1.0"
"hudSlot" "1"
"hudSlotPos" "4"
"weight" "5"
}
entityDef projectile_elite
{
"inherit" "projectile_bullet_base"
"damage" "skill:plr_elite_dmg"
}
entityDef fireInfo_elite
{
"def_onFire" "projectile_elite"
"ammoType" "ammo_9mm"
"ammoRequired" "1"
"ammoPerShot" "1"
"fireRate" "0.13"
"punchAngle" "-2 0 0"
"model_flash" "sprites/muzzleflash2.spr"
}
entityDef fireInfo_elite_alt
{
"inherit" "fireInfo_elite"
"act_fire" "8,9,10,11,12"
"act_fireLast" "13"
}

View file

@ -0,0 +1,56 @@
entityDef weapon_famas
{
"inherit" "CSBaseRifle"
"editor_usage" "FAMAS Weapon - Uses ammo_762nato"
"model" "models/w_famas.mdl"
"model_view" "models/v_famas.mdl"
"inv_name" "FAMAS Weapon"
"def_fireInfo" "fireInfo_famas"
"clipSize" ""
"act_fire" ""
"actAltFire" ""
"act_holster" ""
"act_reload" ""
"act_draw" ""
"act_idle" ""
"snd_fire" "Weapon_FAMAS.Single"
"speed_mod" ""
"price" ""
"crossMinDist" ""
"crossDeltaDist" ""
"accuracyDivisor" ""
"accuracyMovementPenalty" ""
"accuracyMultiplier" ""
"rangeModifier" ""
"penetrationPower" ""
"bulletStrength" ""
"multiplierShots" ""
"multiplierStrength" ""
"multiplierInaccuracy" ""
"hudSlot" "0"
"hudSlotPos" "7"
"weight" "25"
}
entityDef projectile_famas
{
"inherit" "projectile_bullet_base"
"damage" "skill:plr_famas_dmg"
}
entityDef fireInfo_famas
{
"def_onFire" "projectile_famas"
"ammoType" "ammo_762nato"
"ammoRequired" "1"
"ammoPerShot" "1"
"fireRate" ""
"model_flash" "sprites/muzzleflash2.spr"
}

View file

@ -0,0 +1,57 @@
entityDef weapon_fiveseven
{
"inherit" "CSBasePistol"
"editor_usage" "Five-SeveN Weapon - Uses ammo_57mm"
"model" "models/w_fiveseven.mdl"
"model_view" "models/v_fiveseven.mdl"
"inv_name" "Five-SeveN Weapon"
"def_fireInfo" "fireInfo_fiveseven"
"clipSize" "20"
"act_fire" "1,2"
"act_fireLast" "3"
"act_reload" "4"
"act_draw" "5"
"act_idle" "0"
"snd_fire" "Weapon_FiveSeven.Single"
"speed_mod" "1.0"
"price" "750"
"crossMinDist" "8"
"crossDeltaDist" "3"
"accuracyDivisor" "200"
"accuracyMovementPenalty" "1.4"
"accuracyMultiplier" "1"
"accuracyAdd" "0.0055"
"rangeModifier" "1.875"
"penetrationPower" "1.0"
"bulletStrength" "0.5"
"multiplierShots" "10"
"multiplierStrength" "0.4"
"multiplierInaccuracy" "1.0"
"hudSlot" "1"
"hudSlotPos" "5"
"weight" "5"
}
entityDef projectile_fiveseven
{
"inherit" "projectile_bullet_base"
"damage" "skill:plr_fiveseven_dmg"
}
entityDef fireInfo_fiveseven
{
"def_onFire" "projectile_fiveseven"
"ammoType" "ammo_57mm"
"ammoRequired" "1"
"ammoPerShot" "1"
"fireRate" "0.155"
"punchAngle" "-2 0 0"
"model_flash" "sprites/muzzleflash2.spr"
}

View file

@ -0,0 +1,53 @@
entityDef weapon_flashbang
{
"editor_color" ".3 .3 1"
"editor_mins" "-16 -16 -16"
"editor_maxs" "16 16 16"
"editor_usage" "Flashbang"
"editor_rotatable" "1"
"spawnclass" "CSWeapon"
"model" "models/w_flashbang.mdl"
"model_view" "models/v_flashbang.mdl"
"snd_acquire" "weapon.pickup"
"snd_respawn" "item.respawn"
//"def_onFire" "projectile_flashgrenade"
"def_onRelease" "projectile_flashgrenade"
"inv_name" "Flashbang"
"ammoType" "ammo_flashbang"
"ammoRequired" "1"
"inv_ammo_flashbang" "1"
"silent_fire" "1"
"primed_fuse" "4"
"act_idle" "0"
"act_draw" "3"
"act_delay" "1"
"act_fire" "2"
"chargeTime" "2"
"removeOnEmpty" "1"
"drawAfterRelease" "1"
"hudSlot" "3"
"hudSlotPos" "1"
}
entityDef projectile_flashgrenade
{
"spawnclass" "CSProjectile"
"model" "models/w_smokegrenade.mdl"
"frame" "1"
"fuse" "4"
"detonate_on_fuse" "1"
"thrown" "1"
"bounce" "1"
"angular_velocity" "-350 0 0"
"velocity" "300 0 40"
"snd_explode" "Flashbang.Explode"
"snd_bounce" "Flashbang.Bounce"
"decal_detonate" "ExplosionScorch"
"flashTime" "4"
}

Some files were not shown because too many files have changed in this diff Show more