Commit Graph

326 Commits

Author SHA1 Message Date
Nicholas Hastings
8fb97a6152 Add date to sm_dump_netprops_xml output. 2015-07-03 10:39:44 -04:00
Nicholas Hastings
801da2db37 Fix MSVC compile. 2015-07-03 10:38:15 -04:00
Nicholas Hastings
3ab4e4f24e Update sm_dump_netprops to include date of dump, similar to datamaps and classes dump commands. 2015-07-02 17:21:40 -04:00
Nicholas Hastings
1336d9cf5e Update date format on sm_dump_classes and sm_dump_datamaps to use the less ambiguous Y/m/d...
Instead of d/m/Y.
2015-07-02 17:21:03 -04:00
Nicholas Hastings
dac3d1c988 Remove leftover debug code. 2015-05-06 22:01:39 -04:00
Nicholas Hastings
64f9aedebc Add basic support for Black Mesa.
(Basically a copy of SDK 2013's support, but against BMS SDK).
2015-05-06 21:12:13 -04:00
Yed
5694a759ce Add IsFree check to FindEntityByNetClass in SDKTools (PR #330). 2015-05-04 18:13:11 -07:00
Nicholas Hastings
2432540d6e Merge branch 'set-client-name' 2015-04-17 04:50:13 -07:00
Nicholas Hastings
16eeaf625f Enable the "name %s" command blocking on CS:GO as well. 2015-04-17 06:51:48 -04:00
Kyle Sanderson
88c4618230 Merge pull request #320 from KyleSanderson/dust
Remove Project Files from older outdated build systems.
2015-04-02 10:34:57 -07:00
Kyle Sanderson
7341bd184e Remove Project Files from older outdated build systems. 2015-04-01 19:54:34 -07:00
Nicholas Hastings
7268987461 Merge pull request #301 from alliedmodders/get-team-entity
Add GetTeamEntity native to SDKTools.
2015-04-01 22:30:18 -04:00
Nicholas Hastings
885117fb66 Add hack-fix for CS:S reverting name changes done with SetClientName. 2015-03-22 18:29:11 -04:00
Nicholas Hastings
7d795b523e Add SetClientName native. 2015-03-22 12:15:08 -07:00
Nicholas Hastings
ae8efdddcb Add GetTeamEntity native to SDKTools. 2015-03-10 07:27:43 -07:00
David Anderson
eaea3c927d Update upstream AMTL as a submodule. 2015-03-08 00:24:03 -08:00
David Anderson
a1afa23bc4 Implement a new stack and error handling model for the SourcePawn VM.
This has three major changes to SourcePawn. First, the API now supports the concept of "exceptions". The exception state is a global property of an instance of the SourcePawn VM. Exceptions can be caught or suppressed. Many places in SourceMod have been updated to check exceptions instead of errors.

The new API obsoletes major parts of the embedder API - all but one method of invoking functions is obsoleted, and the debug interface has been scrapped. Extensions using the native API will not be affected, however, ThrowNativeError has been deprecated in favor of ReportError.

Second, the SourcePawn concept of a "stack" has been unified at the API level. A stack frame iterator now iterates over all SourcePawn invocations, rather than the topmost plugin. This makes error handling more consistent and removes another dependency on context-per-plugin.

Finally, the implementation of stack frames has been changed dramatically. Rather than maintain a complicated and expensive return pointer stack, we now rely on the implicit one provided by the CPU. The stack frame iterator now walks the JIT stack directly. This removes many unnecessary bookkeeping instructions from the generated code, in particular making the CALL instruction 40% faster.

These changes required some fair surgery to the JIT. Its error paths are now slightly more complicated, as they have to throw an exception rather than return an error code. In addition, any path that can throw an exception is now responsible for creating an "exit frame", which exists to tell the stack frame iterator about transitions from the JIT to the VM.
2015-03-04 23:45:30 -08:00
Nicholas Hastings
5f7e800444 Use new IVEngineServer::GetIServer to get IServer* on Insurgency. 2015-02-22 15:16:26 -05:00
Anthony
3558418ed7 Initializing soundEntry and using something safer than strcpy 2015-02-05 11:12:33 -08:00
Anthony
ee0575bbb0 Adding EmitSoundEntry() for engines >= portal 2 2015-01-21 10:33:29 -08:00
Anthony
cddae6f456 Upgrading the normal sound hook for games like CS:GO 2015-01-20 15:08:57 -08:00
Nicholas Hastings
7f0edd441e Add offset printing to datamap dumps. 2014-12-30 08:36:35 -05:00
Nicholas Hastings
0d67bcc5ba Add null-check on serverclass in gamerules lookup. 2014-12-14 15:21:54 -05:00
Nicholas Hastings
88cb74213c Add support for getting g_pGameRules without a byte signature / symbol. 2014-12-13 16:35:32 -05:00
Nicholas Hastings
939b10bd8e Refactor SDKTools to not expose gamerules ptr ptr outside of vglobals.cpp. 2014-12-13 15:48:51 -05:00
Nicholas Hastings
f0dd129344 Eliminate need for FindEntityByClassname gamedata on sdk2013 and soon css/dods/hl2dm (already on tf2). 2014-10-30 19:25:26 -04:00
Nicholas Hastings
749701014d Eliminate need for sv gamedata on sdk2013 and soon css/dods/hl2dm (already on tf2). 2014-10-30 19:25:13 -04:00
Nicholas Hastings
10cee734dc Eliminate need for s_pTempEnts gamedata on sdk2013 and soon css/dods/hl2dm (already on tf2). 2014-10-30 19:24:53 -04:00
Nicholas Hastings
ffa1887c48 Merge pull request #65 from powerlord/master
New functions for SDKTools to get information from game_sound files (r=psychonic).
2014-07-04 17:17:00 -04:00
Ross Bemrose
966841afbd Make sure the edict isn't free.
return GetParametersForSoundEx's return value instead of always true.
2014-07-03 14:13:36 -04:00
Ross Bemrose
e1d4ed0e34 Fixed overwriting the same copy/pasted line twice instead of once per new native. 2014-07-03 13:19:19 -04:00
Nicholas Hastings
3254f6f362 Switch TF2 to use IVEngineServer::GetIServer in SDKTools to find IServer ptr. 2014-07-03 12:26:52 -04:00
Ross Bemrose
d25ab6349c Commit new version of bug 5942: New functions for SDKTools to get information from game_sound files. 2014-07-03 10:20:53 -04:00
Nicholas Hastings
58158ce607 Merge pull request #40 from alliedmodders/fix-invalid-string-index
Fix FindStringIndex native not returning INVALID_STRING_INDEX when string not found (bug 6144, r=DS).
2014-06-19 14:40:16 -04:00
Nicholas Hastings
291ef6fdc4 Fix FindStringIndex native not returning INVALID_STRING_INDEX when string not found (bug 6144). 2014-06-19 11:40:01 -04:00
Nicholas Hastings
75254bbf25 Update SDKTools entity output functions to use core's GetEntityClassname instead of own. 2014-06-19 11:27:26 -04:00
Nicholas Hastings
e95309a603 Add early-exit in entity output detour if entity has no classname. 2014-06-19 00:33:54 -04:00
Nicholas Hastings
e7870da5ff Add ifdef section notes on endifs. 2014-06-11 23:37:02 -04:00
Nicholas Hastings
a697e81427 Use updated IServerTools iface on TF2 for getting tempent list and FindEntityByClassname. 2014-06-11 22:44:42 -04:00
David Anderson
abdf7d5b07 Port build scripts to the new project API. 2014-05-31 19:56:42 -07:00
David Anderson
2e89d91a86 Switch build infrastructure to Git. 2014-05-25 01:53:58 -07:00
Nicholas Hastings
61b6a32631 Fix crash in ReconnectClient and Inactivate client when IServer ptr is null (bug 6122, r=asherkin).
--HG--
extra : amend_source : a38ac59091e43118d61b9c3eda30dece4190992e
2014-05-15 10:49:32 -04:00
Nicholas Hastings
0513f93f9d Add PrepSDKCall_SetAddress and Address support to PrepSDKCall_SetFromConf (bug 5261, r=asherkin). 2014-05-07 12:58:16 -04:00
Kyle Sanderson
b1901da79f Unify Maximum supported clients, raised SDKTools limit (bug 5964, r=psychonic). 2014-05-06 18:40:35 -07:00
Scott Ehlert
ecec7dbef3 Deduplicate a number of files used by extensions by moving them to the public directory (bug 5341, r=psychonic).
These files include smsdk_ext.cpp, smsdk_ext.h, sm_memtable.h, CDetour/*, and asm/*.
The smsdk_config.h file for each extension has also been moved out of the 'sdk' directory into its parent.

--HG--
rename : extensions/bintools/sdk/smsdk_config.h => extensions/bintools/smsdk_config.h
rename : extensions/clientprefs/sdk/smsdk_config.h => extensions/clientprefs/smsdk_config.h
rename : extensions/cstrike/sdk/smsdk_config.h => extensions/cstrike/smsdk_config.h
rename : extensions/curl/sdk/smsdk_config.h => extensions/curl/smsdk_config.h
rename : extensions/geoip/sdk/smsdk_config.h => extensions/geoip/smsdk_config.h
rename : extensions/mysql/sdk/smsdk_config.h => extensions/mysql/smsdk_config.h
rename : extensions/regex/sdk/smsdk_config.h => extensions/regex/smsdk_config.h
rename : extensions/sdkhooks/sdk/smsdk_config.h => extensions/sdkhooks/smsdk_config.h
rename : extensions/sdktools/sdk/smsdk_config.h => extensions/sdktools/smsdk_config.h
rename : extensions/sqlite/sdk/smsdk_config.h => extensions/sqlite/smsdk_config.h
rename : extensions/structs/sdk/smsdk_config.h => extensions/structs/smsdk_config.h
rename : extensions/tf2/sdk/smsdk_config.h => extensions/tf2/smsdk_config.h
rename : extensions/topmenus/sdk/smsdk_config.h => extensions/topmenus/smsdk_config.h
rename : extensions/updater/sdk/smsdk_config.h => extensions/updater/smsdk_config.h
rename : extensions/sdktools/CDetour/detourhelpers.h => public/CDetour/detourhelpers.h
rename : extensions/sdktools/CDetour/detours.cpp => public/CDetour/detours.cpp
rename : extensions/sdktools/CDetour/detours.h => public/CDetour/detours.h
rename : extensions/sdktools/asm/asm.c => public/asm/asm.c
rename : extensions/sdktools/asm/asm.h => public/asm/asm.h
rename : public/sample_ext/sdk/smsdk_config.h => public/sample_ext/smsdk_config.h
rename : core/logic/sm_memtable.h => public/sm_memtable.h
rename : public/sample_ext/sdk/smsdk_ext.cpp => public/smsdk_ext.cpp
rename : public/sample_ext/sdk/smsdk_ext.h => public/smsdk_ext.h
2014-04-23 21:19:28 -05:00
Nicholas Hastings
63451b7b6b Update for hl2sdk-nd changes. 2014-04-20 12:00:04 -04:00
Nicholas Hastings
57067d38fe Print SendProp flags in netprop dump (bug 6082, r=asherkin). 2014-03-29 14:23:16 -04:00
Nicholas Hastings
d6bbb765c1 Add hack to not throw error on FEBC not found if not attempted to be found (nobug, r=asherkin). 2014-03-21 12:03:19 -04:00
Nicholas Hastings
b4156a19c3 Fix TE_* natives operating on incorrect data for some tempents (bug 6072, r=fyren). 2014-03-08 19:46:49 -05:00
Nicholas Hastings
b3e2647dc4 Fix IgniteEntity crash on NMRiH. 2014-03-08 01:04:49 -05:00
Scott Ehlert
22e8b53029 Add gamedata for EntityFactoryDictionary and IServer for Dota 2 on Linux (bug 6068, r=psychonic). 2014-03-03 05:20:40 -06:00
Kyle Sanderson
38bbb8580f Move PlayerRunCmd to a global VTable Hook (bug 6051, r=psychonic). 2014-03-01 14:25:35 -07:00
Peace-Maker
75d950e4b0 Add GiveAmmo native to SDKTools (bug 6039, r=psychonic). 2014-02-10 10:49:19 -05:00
Scott Ehlert
e00e879af5 Use == instead of is operator for checking string equality in AMBuild scripts (bug 6043, r=dvander). 2014-02-09 22:50:20 -06:00
Kyle Sanderson
5acc7209b2 Add client checks to EmitSound SoundsHooks (bug 5873, r=psychonic) 2014-01-17 23:25:23 -05:00
David Anderson
f82224eba0 Move versioning to a static library to improve trivial build speed (bug 5997 part 9, r=ds). 2013-12-30 17:51:00 -05:00
David Anderson
75e622e879 Port packaging to AMBuild 2 (bug 5997 part 6, r=ds). 2013-12-30 17:50:59 -05:00
David Anderson
e1a820dcf9 Port simple C++ build scripts to AMBuild 2 (bug 5997 part 1, r=ds). 2013-12-30 17:50:56 -05:00
Nicholas Hastings
056f64ad40 Consolidate SDKTools ent factory lookup (r=asherkin). 2013-11-05 20:32:37 -05:00
Nicholas Hastings
c9c147a814 Have SDKTools use IServerTools to get ent facts where available (bug 5968, r=asherkin). 2013-10-29 18:59:36 -04:00
Kyle Sanderson
35191745ca Fix regression in SDKTools SetClientListening hook refcounting (bug 5956, r=fyren). 2013-10-24 13:20:42 -04:00
Nicholas Hastings
e0746e1ab8 Added engine support for Insurgency (bug 5951, r=asherkin). 2013-10-13 14:16:08 -04:00
Nicholas Hastings
5e1d207eae Added engine support for Blade Symphony (bug 5949, r=asherkin). 2013-10-13 14:15:29 -04:00
Nicholas Hastings
3e15966c3e Add support for Source SDK Base 2013 (bug 5917, r=asherkin). 2013-10-13 14:14:51 -04:00
Nicholas Hastings
575962569f Update GivePlayerItem for new params in CS:GO. 2013-08-14 17:07:27 -04:00
FlaminSarge
7db280a666 Add GetPlayerJingleFile native. (bug 5690, r=asherkin) 2013-08-12 02:08:34 +01:00
Kyle Sanderson
b9cd424186 Add support for nested datatables. (bug 5446, r=asherkin) 2013-08-12 00:54:21 +01:00
Kyle Sanderson
aad1b5dc9f Fixed regression in CellFilter GetRecipientIndex reading oob (bug 5826, r=psychonic). 2013-08-03 19:20:03 -04:00
Nicholas Hastings
a36c266e7d Split TF2, DoD:S, HL2:DM, and ND to separate binaries (bug 5813, r=asherkin). 2013-07-21 11:53:56 -04:00
Nicholas Hastings
636c100b6b Updated for latest hl2sdk-dota changes.
--HG--
extra : amend_source : 503e712bb88b2da051c9ea3d6d51b7294ba83230
2013-07-29 10:03:18 -04:00
Kyle Sanderson
29bc273e58 Removed -Wno-parentheses from posix build and fixed warnings (bug 5745, r=psychonic). 2013-07-18 15:50:57 -04:00
Kyle Sanderson
b96e0c8713 Fixed accidental assignment in each of SDKTools and sp compiler (bug 5745, r=psychonic). 2013-07-18 15:50:50 -04:00
Kyle Sanderson
1f88f1f3f6 Throw error instead of crash when calling SetTeamScore between maps (bug 5718, r=psychonic). 2013-07-18 11:38:04 -04:00
Nicholas Hastings
c230cf5aab Updated for latest hl2sdk-dota changes. 2013-07-12 02:31:41 -04:00
Nicholas Hastings
702885ebb2 Fixed SDKTools dota build. 2013-05-14 11:27:06 -04:00
Nicholas Hastings
a12b83de59 Typo fix. 2013-05-14 10:24:47 -04:00
Nicholas Hastings
3b83356825 Updated for latest hl2sdk-dota changes.
--HG--
extra : rebase_source : 0365a2c057523822481dee0880f8a5d525a8050a
2013-05-14 10:19:29 -04:00
Nicholas Hastings
614967ccc1 Updated for latest hl2sdk-dota changes. 2013-05-13 15:18:12 -04:00
Peace-Maker
35cd7eb2be Add alternative lookup method for EntityFactoryDictionary (bug 5658, r=asherkin). 2013-03-19 11:25:04 -04:00
Nicholas Hastings
ec716f0c58 Cache m_iEFlags offset for datamaps dump instead of getting for each ent (bug 5657, r=asherkin). 2013-03-19 11:24:01 -04:00
Nicholas Hastings
877ef76540 Tweaked Dota 2 support to account for lack of IPluginHelpers (bug 5656, r=asherkin). 2013-03-19 11:19:19 -04:00
GoD-Tony
d866c061a3 Added logged error when PlayerRunCommand offset lookup fails (bug 5535, r=psychonic). 2013-03-18 19:53:30 -04:00
Asher Baker
0f62a8ec2f Generate debugging information during compilation (bug 5227, r=ds). 2013-03-17 21:00:28 +00:00
Nicholas Hastings
cf0401fea7 Add DPT_Int64 type to netprop dumps (bug 5655, r=asherkin). 2013-03-16 22:57:57 -04:00
Kyle Sanderson
ef6c454137 Replace usages of deprecated Sourcehook Add/Remove macros (bug 5631, r=dvander). 2013-03-16 22:15:25 -04:00
Nicholas Hastings
707e820af6 Fixed some engine builds failing. 2013-03-16 14:11:56 -04:00
Nicholas Hastings
0c7696da65 Add GetPlayerResourceEntity to SDKTools; deprecate old, broken TF2-specific impl (bug 5491, r=asherkin). 2013-03-16 13:50:36 -04:00
Peace-Maker
cd9a28864a Updated for CS:S sync (r=asherkin). 2013-02-05 21:45:11 +00:00
Nicholas Hastings
c2ecb7363c Fixed VARINT & UNSIGNED flags being read from dt instead of member in SendProp arrays (bug 5591, r=prodigysim). 2013-02-04 07:38:30 -05:00
Michael Busby
8dc7f78b0f Fix GameRules_SetPropVector writing data to unexpected addresses instead of to the proxy entity (bug 5592, r=psychonic). 2013-01-27 14:59:14 -08:00
Nicholas Hastings
4a1dd5f519 Added support for new SPROP_VARINT sendprops. 2012-12-18 17:58:45 -05:00
Nicholas Hastings
5256edf0e5 Ported GetEntProp's unsigned prop support to GameRules_GetProp. 2012-12-18 17:53:45 -05:00
Nicholas Hastings
e9385e6eb6 Validate entity in GameRules_GetPropEnt and in CS_DropWeapon safety checks. 2012-12-17 14:34:44 -05:00
Asher Baker
a991d327e6 Improved sendtable dump output (bug 5471, r=psychonic). 2012-11-15 17:50:11 +00:00
Nicholas Hastings
4f800fbd00 Updated SDKCall SetSignature to use same hidden-symbols engine list as core (bug 5440, r=me). 2012-08-27 19:31:38 -04:00
Asher Baker
bf76be5dfa Overhauled versioning information (bug 5453, r=dvander). 2012-08-26 01:33:54 +01:00
Scott Ehlert
0d795fc651 Added support for CS:GO on Mac OS X (bug 5459, r=psychonic). 2012-08-25 11:28:52 -05:00
Nicholas Hastings
7441af67a8 Really fixed issues for today's TF2 engine update (bug 5450). 2012-08-24 01:36:42 -04:00
Nicholas Hastings
d88f07fd31 Updated SDKTools IServer finding on Windows for Ep2v and CSS (bug 5450, r=me). 2012-08-23 07:47:44 -04:00
Tony
74f49ec38f Added more parameters to PlayerRunCommand forward (bug 5346, r=asherkin). 2012-08-21 00:42:46 -04:00