Ruben Gonzalez
f523d6a74d
Update function signature comments.
2015-03-13 16:19:57 -04:00
Ruben Gonzalez
ff8cbf97c4
FIx some TF2 natives not having the correct vstk size.
2015-03-12 18:28:17 -04:00
Ruben Gonzalez
a947dfa9d5
Update TF2's MakeBleed native for the latest update.
2015-03-12 17:54:47 -04: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
715a51d01f
Merge pull request #285 from alliedmodders/frames
...
Implement a new stack and error handling model for the SourcePawn VM.
2015-03-04 23:45:59 -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
fdc3c0791e
Merge pull request #266 from alliedmodders/tfconds-reducks
...
Replace frameloop for player condition checks in TF2 ext with sendproxies (r=All of the KyleS).
2015-02-27 04:43:15 -08:00
Nicholas Hastings
5f7e800444
Use new IVEngineServer::GetIServer to get IServer* on Insurgency.
2015-02-22 15:16:26 -05:00
Nicholas Hastings
70be2941fe
All of the KyleS.
2015-02-18 22:42:06 -05:00
Nicholas Hastings
9ffbac4f4e
Simplified code. (We don't need m_Shared).
2015-02-18 18:44:31 -05:00
Nicholas Hastings
684b59a921
Don't fire forwards if client isn't ingame.
2015-02-18 12:33:37 -08:00
Nicholas Hastings
e8765c5d3d
Move m_CondOffset initialization to ctor.
2015-02-18 12:32:45 -08:00
Nicholas Hastings
ac530a4ce0
Fix passing incorrect cond# to forwards for CondEx/2/3 fields.
2015-02-18 12:09:17 -08:00
Nicholas Hastings
589482736f
Merge pull request #247 from AnthonyIacono/normalshook-upgrade
...
Improvements for NormalSHook functionality (r=psychonic).
2015-02-18 14:43:33 -05:00
Nicholas Hastings
c4a58b1c95
Make sure processing and fwd calls happen on main thread.
2015-02-18 05:35:58 -08:00
Nicholas Hastings
6bc2d20177
Mess with some array sizes.
2015-02-08 20:30:15 -05:00
Nicholas Hastings
350eb462ca
Rewrite TF2 extension's player conditions handling to remove dirty frame loop.
2015-02-08 20:03:07 -05:00
Anthony
3558418ed7
Initializing soundEntry and using something safer than strcpy
2015-02-05 11:12:33 -08:00
Nicholas Hastings
10c62dc0c0
Fix crash when creating and destroying a TopMenu without map change (bug 6303).
2015-02-04 09:57:04 -08:00
Ruben Gonzalez
213e7ced8c
Initial CSGO GetWeaponPrice fixes
2015-01-31 12:44:18 -05:00
Nicholas Hastings
e2aab2ab10
Don't allow plugins to block LevelInit (wtf).
2015-01-27 18:01:30 -08:00
Anthony
ee0575bbb0
Adding EmitSoundEntry() for engines >= portal 2
2015-01-21 10:33:29 -08:00
Kyle Sanderson
e3349116cb
Establish a default timeout for MySQL connectivity.
2015-01-21 05:58:45 -08:00
Anthony
cddae6f456
Upgrading the normal sound hook for games like CS:GO
2015-01-20 15:08:57 -08:00
Nicholas Hastings
aa38226337
Fix SDKHooks causing crash on plugin load/unload or player connect/disconnect if missing gamedata.
2014-12-30 20:56:28 -05: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
David Anderson
61bf7de101
Revert adminmenu API changes.
2014-12-12 10:10:46 -08:00
Nicholas Hastings
09060c265f
Convert TFHoliday values to pubvars.
2014-12-09 20:21:24 -05:00
Nicholas Hastings
e7e43e38a5
Merge pull request #210 from alliedmodders/more-clientprefs-newauth
...
Fix clientprefs IsAuthIdConnected (again) (r=asherkin).
2014-11-26 18:55:57 -05:00
Nicholas Hastings
b0ceac9d74
Fix clientprefs IsAuthIdConnected (again).
2014-11-22 10:00:40 -08:00
Nicholas Hastings
f38fd6a550
Merge pull request #205 from alliedmodders/tf2condex3
...
Add support for TF2 player conditions above >= 96 (r=asherkin).
2014-11-19 17:15:56 -05:00
Nicholas Hastings
d3a4c972e2
Add static_assert on ConBitVecAndNot hack so it gets updated on next cond count change.
2014-11-15 11:31:18 -05:00
Nicholas Hastings
1cf43b4ec2
Fix off-by-one error with FindNextSetBit in cond checks.
2014-11-15 11:22:43 -05:00
Nicholas Hastings
849df7895b
Update TF2 extension for new m_nPlayerCondEx3 player conditions field.
2014-11-15 10:08:07 -05:00
Nicholas Hastings
ea86eee74e
Fix SetAuthIdCookie's IsAuthIdConnect function's issues with mixed auth id types.
2014-11-15 09:34:49 -05:00
Nicholas Hastings
0d24804839
Merge pull request #174 from alliedmodders/eliminate-more-gamedata
...
Eliminate the need for more gamedata on some games (r=asherkin).
2014-11-08 12:52:53 -05:00
David Anderson
b97335ccb0
Port TopMenus to transitional syntax.
2014-10-30 19:20:33 -07: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
David Anderson
76d26044f6
Fix build.
2014-10-21 21:51:15 -07:00
David Anderson
75335dbef3
Merge pull request #156 from Bara20/patch-2
...
Fix undefined symbol: clock_gettime.
2014-10-21 12:42:18 -07:00
Nicholas Hastings
77dc5ac7ed
Fix build.
2014-10-14 17:47:44 -04:00
Nicholas Hastings
37c29775d4
Fix OnTakeDamage_Alive gamedata lookup in SDKHooks.
2014-10-14 17:36:55 -04:00
Nicholas Hastings
570570f7a0
Fix regression causing inconsistencies in clientprefs auth id handling (r=VoiDeD).
2014-09-12 13:04:37 -07:00
Nicholas Hastings
e4569cb2b9
Disable RTTI for more game-agnostic extensions.
2014-09-11 17:41:25 -07:00
Nicholas Hastings
47450bb98c
Disable RTTI for game-agnostic extensions
2014-09-11 17:28:24 -07:00
Bara
d493bc701d
Fix undefined symbol: clock_gettime
...
[SM] Extension dbi.mysql.ext.so failed to load: /home/csgo/csgo/addons/sourcemod/extensions/dbi.mysql.ext.so: undefined symbol: clock_gettime
2014-09-12 01:52:20 +02:00
Nicholas Hastings
6d7115d62f
Update the missed steamid nullcheck in clientprefs
2014-09-09 18:04:39 -07:00
Nicholas Hastings
9e6fcc7673
Make OnClientAuthorized use Steam2 ids where available
2014-09-09 17:43:01 -07:00
David Anderson
448c55c0f2
Fix DBI after AMTL changes.
2014-09-03 21:11:17 -07:00
Nicholas Hastings
be55587d70
Add OnTakeDamage_Alive hook support to SDKHooks (bug=6249).
2014-09-03 17:45:34 -04:00
Ryan Stecker
cae1d0dec1
Don't override hook result in BlockedPost.
2014-09-02 13:01:18 -05:00
Ryan Stecker
88c6d3d9a7
Merge remote-tracking branch 'upstream/master' into sdkhooks-blocked
2014-09-02 00:04:54 -05:00
David Anderson
9267d0c803
Eliminate Newborn/NoAddRef (bug 5907, r=ds).
2014-08-22 22:50:25 -07:00
Ryan Stecker
d873b20573
Fix typo related to invalid regex handle errors.
2014-08-14 12:24:51 -05:00
Ryan Stecker
601aac440e
Implement SDKHook_Blocked and SDKHook_BlockedPost.
2014-08-01 21:35:41 -05:00
Nicholas Hastings
8d5fe316e0
Merge pull request #114 from VoiDeD/tf2-removewearable
...
Implement TF2_RemoveWearable native (r=psychonic).
2014-07-30 18:43:34 -04:00
Kyle Sanderson
ab72841704
Rename SDKHooks function and variable to be friendlier.
2014-07-30 15:34:51 -07:00
Ryan Stecker
4a400d9569
Implement TF2_RemoveWearable native.
2014-07-29 20:31:27 -05:00
Kyle Sanderson
ba0406930d
Pre-allocate 8 elements to skip trivial reallocations near the beginning of the vectors life.
2014-07-29 02:48:13 -07:00
Kyle Sanderson
be79dee6e0
Store only the callback as per VoiDeD, re-eval if HookList changes.
2014-07-29 02:46:49 -07:00
Kyle Sanderson
97610edda4
HackFix: Mimic forwardsys style of pawn calling.
2014-07-28 15:51:34 -07:00
Peace-Maker
1181144e57
Fix regression. SDKHook_ReloadPost never firing
...
The switch to vtable hooks typo'd the ReloadPost hooks.
2014-07-16 20:40:52 +02:00
Ruben Gonzalez
9e1fef9775
Update TerminateRound code and gamedata for update.
2014-07-11 09:18:47 -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
eeba5b93c5
Update CStrike extension CSWeaponDrop to use Vector overload on CS:GO.
2014-07-02 10:08:56 -04:00
Peace-Maker
909c6ec594
Refresh sorting of topmenu after (re)LoadTopMenuConfig (bug 6032, r=psychonic).
2014-06-29 21:07:55 -04:00
Nicholas Hastings
bbdf40160c
Add missing thisptr to call.
2014-06-23 19:24:27 -04:00
Nicholas Hastings
de0f49248d
Update TF2_IsHolidayActive native to virtually call gamerules IsHolidayActive.
2014-06-23 16:23:49 -04:00
Nicholas Hastings
fe485836f1
Remove redundant code.
2014-06-19 23:48:15 -04:00
Nicholas Hastings
1daf629a42
Remove dead variable.
2014-06-19 23:34:35 -04:00
Nicholas Hastings
151c6d246e
Switch TF2 extension to hook CTFGameRules::IsHolidayActive for holiday forward (bug 6137).
2014-06-19 23:22:47 -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
Kyle Sanderson
69cb941fa4
Merge pull request #25 from KyleSanderson/kylepreds
...
Replace SourceHook list usages in clientprefs with AMTL.
2014-06-12 15:42:30 -07: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
Kyle Sanderson
695fc802a9
Replace SourceHook list usages in clientprefs with AMTL.
2014-06-04 21:49:48 -07:00
Kyle Sanderson
975fc93e1f
Replace SourceHook list usages in tf with AMTL.
2014-06-04 17:36:53 -07:00
Kyle Sanderson
6c37a5d9f3
Replace SourceHook list usages in cstrike with AMTL.
2014-06-04 17:36:28 -07: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
Kyle Sanderson
365da7fef6
GCC build fix.
2014-05-20 20:33:50 -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
b4ff034ac2
Fix passing invalid ent to OnEntity forwards (bug 6119, r=KyleS).
...
--HG--
extra : rebase_source : f5477d7d36ef579c40b0547389e8eccaf129f69e
2014-05-10 22:21:42 -04:00
Nicholas Hastings
6b27a7fe46
Consolidate duplicate OnEntityCreated logic (bug 6119, r=KyleS).
...
--HG--
extra : rebase_source : b0f563081c5d98c3fbc2769ee89e3ce0ec093624
2014-05-10 22:21:42 -04:00
Nicholas Hastings
adc9569e23
Fix clients being invalid when passed to OnEntityDestroyed (bug 6119, r=KyleS).
...
--HG--
extra : rebase_source : 546168635b7e7cd8f8c4302858aa258025444dfd
2014-05-10 22:21:38 -04:00
Peace-Maker
e9b4a6e96c
Add DisplayTopMenuCategory native (bug 6033, r=dvander).
2014-05-09 12:32:49 -07:00
Peace-Maker
530078b3ae
Add ability to disable TopMenu Title Caching (bug 6034, r=dvander).
2014-05-09 12:30:52 -07:00