Commit Graph

267 Commits

Author SHA1 Message Date
Alexander 'z33ky' Hirsch
28e87ce3d2 Fix/Implement VScript FFI for GCC's virtual member functions 2021-03-20 19:21:53 +01:00
Alexander 'z33ky' Hirsch
761f065d55 Fix stdshaders compilation on Linux 2021-03-20 14:56:46 +01:00
Alexander 'z33ky' Hirsch
e0091261ed Fix Buttons not working on Linux with newer gcc
The button mask is created by shifting a bit according to the
MouseCode, which is just a renamed ButtonCode_t.
Mouse buttons start at 107, which is way out of range for our ints.

To fix this, introduce MouseButtonBit(), which checks if a button code
corresponds to a mouse button at all and returns a usable bitmask
for the corresponding mouse button code.
This is then used for the button mask.
2021-03-20 13:58:23 +01:00
Alexander 'z33ky' Hirsch
718186f165 Specify gcc9+support.cpp dependency for gcc8+ Makefiles 2021-03-19 17:41:27 +01:00
Alexander 'z33ky' Hirsch
a5fb07d6ac Fix gcc9+support.o compilation 2021-03-19 17:41:27 +01:00
Alexander 'z33ky' Hirsch
49836ab50a Fix gcc build errors & warnings 2021-03-19 17:41:27 +01:00
samisalreadytaken
6ed8b31091 vscript additions:
- Added CBaseEntity::Activate
   - Added CBaseEntity::SetSolid
   - Added CBaseEntity::GetSolid
   - Added C_BaseEntity::UpdateOnRemove

   - Added hook behaviour on CScriptConCommand
   - Added more script overridable concommands
   - Added CScriptConvarAccessor::SetChangeCallback
   - Added CScriptGlowObjectManager
   - Added CScriptSteamAPI
2021-03-19 16:44:12 +02:00
Blixibon
8bcb6263f5 Misc. response system code cleanup/QOL changes 2021-03-18 00:34:31 -05:00
Blixibon
a05503e42b Fixed rr_disableemptyrules not always working correctly 2021-03-18 00:33:35 -05:00
Blixibon
4e09f4bdf5 Added rr_disableemptyrules cvar, which prevents rules from being selected again after their norepeat/speakonce responses are exhausted 2021-03-17 16:55:54 -05:00
Blixibon
4b8da761ce Added base Mapbase matchers to tier1 so that the response system library can access them 2021-03-17 16:50:24 -05:00
Blixibon
4d3f51a720 Fixed a compile error from when NEW_RESPONSE_SYSTEM is disabled 2021-03-17 10:45:31 -05:00
Blixibon
ec995b68c9 Added keyvalue/input to set suit zoom FOV in logic_playerproxy 2021-03-15 21:37:02 -05:00
Blixibon
58bc8b7101 Added save/load command overrides for VScript 2021-03-15 21:31:12 -05:00
Blixibon
c66e9c78a0 Added keyvalues for controlling func_rotating min/max sound pitch 2021-03-14 16:33:18 -05:00
Blixibon
a1332a442d Added volume scale to env_microphone 2021-03-14 13:49:10 -05:00
Blixibon
4884d02481 Fixed spelling errors of "Receive" in the NetMsg VScript singleton 2021-03-14 13:48:21 -05:00
Blixibon
fb30f64d30 Updated README and mapbase_version for v6.3 2021-03-14 00:04:04 -06:00
Blixibon
e9cc3cb134
Merge pull request #109 from mapbase-source/feature/vgui-text-display
vgui_text_display (point_worldtext-like text entity)
2021-03-13 16:49:54 -06:00
Blixibon
4f7793ae12 Added a missing shutdown call from VGui movies/video code 2021-03-13 16:47:18 -06:00
Blixibon
3579404668 Added FireEvent hook to clientside VScript (equivalent of HandleAnimEvent) 2021-03-13 16:46:29 -06:00
Blixibon
6cfcc66cec Added halo scale and custom material keyvalues to point_spotlight 2021-03-13 16:45:20 -06:00
Blixibon
2fbef62553 Fixed a crash on exit involving the presence of multiple VGui screen manifests and a possibly defunct memory leak fix 2021-03-13 16:44:28 -06:00
Blixibon
303b0552e9 Touched up vgui_text_display code, added Toggle input 2021-03-13 16:42:47 -06:00
Blixibon
3bb9a92ed8 Added hook for CBaseAnimating::HandleAnimEvent() 2021-03-12 15:33:48 -06:00
Blixibon
97116a5eca Exposed npc_sniper to VScript 2021-03-12 15:19:36 -06:00
Blixibon
8d807b5b0b Exposed CAI_BaseNPC::GetActualShootPosition() and related functions to VScript 2021-03-12 15:18:37 -06:00
Blixibon
92ec640db3 Added vgui_screens_mapbase.txt to level init process for loading shared VGui screens 2021-03-12 15:07:05 -06:00
Blixibon
7221aab090
Merge pull request #107 from mapbase-source/feature/asw-movies
Alien Swarm SDK videos and movies
2021-03-12 11:32:06 -06:00
Blixibon
d953468bc1 Fixed env_credits always resetting sv_unlockedchapters to 15 when it shouldn't 2021-03-12 11:08:39 -06:00
Blixibon
36a459d21c Fixed a crash related to VScript custom console commands 2021-03-12 11:06:46 -06:00
Blixibon
c7657b1547 Fixed a crash related to an obscure choreo event 2021-03-12 11:04:56 -06:00
Blixibon
9432ecc40c Added new "mute" keyvalue and StopMovie input to logic_playmovie 2021-03-12 10:15:09 -06:00
Blixibon
c17d32d7a4
Merge pull request #105 from samisalreadytaken/dev3
vscript additions and fixes 3
2021-03-11 02:36:53 -06:00
Blixibon
57774c2a79 Added vgui_text_display, an entity which displays a VGui text label oriented in the world 2021-03-10 12:07:55 -06:00
Blixibon
e10a4d6613 Added VScript file response to base response dispatch code 2021-03-10 02:11:39 -06:00
Blixibon
24ac080608 Added legacy response context operators 2021-03-10 02:10:22 -06:00
Blixibon
8966462fee Stabilized implementation of some Mapbase code in the new response system 2021-03-09 12:39:13 -06:00
Blixibon
efec7ab4db Added Mapbase's enhanced save/restore to new response system + moved aound rr_dumphashinfo code so that it has access to default response system 2021-03-09 12:37:08 -06:00
Blixibon
8033c0dad4 Fixed response group default params, which seem to have been broken in vanilla response system code from the SDK 2021-03-09 12:30:48 -06:00
Blixibon
d4a91fe027 Made followup responses more reliable with generic NPCs and added "vscript_file" response type 2021-03-09 10:03:40 -06:00
Blixibon
d6b959899c Missed a file in the initial Response System library port commit 2021-03-08 02:12:53 -06:00
Blixibon
d081a0cee3 Added prototype Response System library port from the Alien Swarm SDK 2021-03-08 02:11:13 -06:00
Blixibon
251725c987 Added semi-standardized custom model support to several NPCs 2021-03-07 12:03:32 -06:00
Blixibon
92866ca2fa Added EnableCrouch input to npc_strider 2021-03-07 11:57:33 -06:00
Blixibon
8f7d3ac03b Added keyvalue to combine_mine for disabling companion avoidance 2021-03-07 11:55:08 -06:00
Blixibon
15ae789b89 Added "Disable flashlight" keyvalue/inputs inspired by Portal 2's 2021-03-07 11:43:28 -06:00
Blixibon
c4abb0b07f Made HUD movie parameters more flexible; Added WIP movie fade effects for replicating the Portal 2 keyvalues 2021-03-07 11:39:50 -06:00
Blixibon
a4a292975b Added logic_playmovie and vgui_movie_display from Alien Swarm SDK 2021-03-06 01:16:00 -06:00
Blixibon
302885d39c Added video panel code from Alien Swarm SDK + custom looping support 2021-03-06 01:13:49 -06:00
samisalreadytaken
bf182e1c5d vscript additions and fixes:
baseentity_shared.cpp
baseentity.cpp
c_baseentity.h
c_baseentity.cpp
c_world.h
   - Fixed critical ScriptSetContextThink bugs
   - Added C_BaseEntity::SetContextThink (ScriptSetContextThink)
   - Added C_BaseEntity::SetSize
   - Added C_BaseEntity::SetModel
   - Added C_BaseEntity::Destroy

baseentity.h
baseentity.cpp
   - Removed duplicate functions ScriptSetSize and ScriptUtilRemove

player.cpp
   - Moved player script instance registration before player_spawn event

vscript_server.cpp
   - Added CEntities::FindByClassNearestFacing

vscript_funcs_shared.cpp
   - Added GetFrameCount
   - Added IntervalPerTick

vscript_singletons.cpp
   - Better game event descriptors for CScriptGameEventListener
   - Added ::effects (CEffectsScriptHelper)
   - Added ::Convars (CScriptConvarAccessor)

vscript_shared.cpp
   - Fixed clientside entity printing in script VM

mapbase_con_groups.h
mapbase_con_groups.cpp
   - Improved performance by changing string comparisons to direct array access

vscript_bindings_base.h
vscript_bindings_base.cpp
   - Added CScriptKeyValues::SubKeysToTable

vscript_bindings_math.cpp
   - Added ::SimpleSplineRemapVal
   - Added ::SimpleSplineRemapValClamped
   - Added ::Bias
   - Added ::Gain
   - Added ::SmoothCurve
   - Added ::SmoothCurve_Tweak
   - Added ::ExponentialDecay

vscript_squirrel.nut
   - Added ::Lerp
   - Added ::FLerp
   - Added ::SimpleSpline

vscript_squirrel.cpp
   - Added Vector::_unm
   - Added Vector::Set
   - Added Vector::Add
   - Added Vector::Subtract
   - Added Vector::Multiply
   - Added Vector::Divide
   - Added Vector::DistTo
   - Added Vector::DistToSqr
   - Added Vector::IsEqualTo
   - Added Vector::WithinAABox
   - Added Vector::FromKVString
   - Changed vector print syntax
2021-03-06 02:04:55 +02:00
Blixibon
bd3b9c3807 Fixed VBSP VScript documentation not working 2021-03-04 11:37:32 -06:00
Blixibon
14d3ee19d0 Fixed the client-side VScript "player" instance not being set once more after having moved around the VM init code again 2021-01-27 23:25:09 -06:00
Blixibon
fa45fffa39 Added save/restore to client-side VScript 2021-01-27 11:01:38 -06:00
Blixibon
2ee7845e8d Made instance name fixup stop fixing up names starting with '!', which was causing problems with procedurals like !activator 2021-01-27 07:57:21 -06:00
Blixibon
fa37adb1d5 Fixed a few client-side VScript functions not binding correctly 2021-01-26 12:13:04 -06:00
Blixibon
a11cb93c42 Adjusting certain code and metadata for Mapbase v6.2 2021-01-26 12:08:42 -06:00
Blixibon
763c836d45 Fixed a npc_zombie crash caused by inflictor-less crush damage 2021-01-24 22:32:22 -06:00
Blixibon
f484653f41 Fixed host_timescale scaling sounds when cheats are off 2021-01-24 22:31:48 -06:00
Blixibon
6595b96418 Fixed func_rotating angles fix not being in the right place 2021-01-24 22:28:55 -06:00
Blixibon
01f830a72d Fixed new init order causing script classes to continuously reinitialize 2021-01-24 18:38:32 -06:00
Blixibon
4441911f92
Merge pull request #78 from mapbase-source/feature/clientside-vscript
Proper client-side VScript control
2021-01-23 14:21:41 -06:00
Blixibon
e3550438b9 Added functions to create and modify force behavior of client-side "death ragdolls" 2021-01-23 13:20:07 -06:00
Blixibon
eb2e8d5238
Merge pull request #84 from 1upD/mapbase/css-viewmodel-chirality
Enable Counter-Strike Source view model chirality in Mapbase
2021-01-23 11:32:20 -06:00
Blixibon
b4717f3321
Merge pull request #93 from ReDucTor/save-load-init-order-fix
Fixing issue with loading from a save on game start crashing
2021-01-23 10:04:02 -06:00
Blixibon
b720ec4c84 Added spawnflag to make prop_ragdoll bones use constraints which are fixed to each other (also known as "make statue") 2021-01-23 09:32:28 -06:00
Blixibon
8e283f3738 Added OnServerRagdoll hook for VScript 2021-01-23 09:20:21 -06:00
James Mitchell
d23729e6e1 Fixing issue with loading from a save on game start crashing 2021-01-23 13:54:00 +11:00
1upD
2087f90cd5 Enable Counter-Strike Source view model chirality in Mapbase 2020-12-28 23:33:11 -05:00
Blixibon
8af9c0dc61 Added basic think hook to logic_script_client 2020-12-27 15:54:56 -06:00
Blixibon
a3decd7bbe Merge branch 'develop' into feature/clientside-vscript 2020-12-27 09:23:49 -06:00
Blixibon
e55bfa0036
Merge pull request #80 from samisalreadytaken/_23
vscript additions and fixes 2
2020-12-27 00:49:30 -06:00
Blixibon
dd848acba8 Reworked parts of the VScript save/restore caching code 2020-12-27 00:44:50 -06:00
samisalreadytaken
ef7d9ccc0f vscript additions and fixes:
vscript_client.cpp
   - Fixed local player script instance registration
   - Added CEntities::GetLocalPlayer
   - Added Con_IsVisible
   - Added IsWindowedMode
   - Added ScreenWidth
   - Added ScreenHeight
   - Added ScreenTransform
   - Added missing DoUniqueString

gameinterface.cpp
usercmd.h
usercmd.cpp
vscript_singletons.cpp
   - CNetMsgScriptHelper

vscript_singletons.cpp
   - Added hash map for CScriptSaveRestoreUtil
   - Added hash map for CScriptGameEventListener::s_GameEvents
   - Changed CScriptGameEventListener string contexts to hashes
   - Added invalid input condition on CScriptGameEventListener::ListenToGameEvent
   - Moved CDebugOverlayScriptHelper to shared code

ivscript.h
vscript_squirrel.cpp
   - Added IScriptVM::Get/Set/ClearValue (ScriptVariant_t key)

baseentity.h
baseentity.cpp
   - Added CBaseEntity::SetContextThink (ScriptSetContextThink)

vscript_server.cpp
vscript_client.cpp
vscript_funcs_shared.cpp
   - Changed the order user vscript_*.nut files are executed - after internal scripts, before mapspawn

vscript_squirrel.cpp
vscript_squirrel.nut
vscript_server.nut
vscript_shared.cpp
   - Localised all documentation under __Documentation

hl2_usermessages.cpp
   - Added usermessage ScriptMsg

c_baseplayer.cpp
   - Removed redundant check in ~C_BasePlayer
2020-12-26 17:16:46 +03:00
Blixibon
5529127d68 Split logic_script_client and Mapbase user messages into their own files 2020-12-26 00:02:43 -06:00
Blixibon
55cbdf49aa Added CreateProp() function for VScript, allowing the creation of exclusively client-side dynamic props 2020-12-26 00:00:25 -06:00
Blixibon
4861893235 Exposed client-side ragdoll class and functions to VScript 2020-12-25 23:57:02 -06:00
Blixibon
cb7cee6283 Added a few more VScript base entity functions to the client 2020-12-25 23:53:59 -06:00
Blixibon
5e254d19c0 Added more client-side model/animating VScript functions + a hook for handling client-side ragdolls 2020-12-25 09:11:25 -06:00
Blixibon
f70c066a8e Added a bunch of client-side VScript functions to C_BaseEntity 2020-12-25 09:09:33 -06:00
Blixibon
6f0781b5b8 Added logic_script_client entity and a user message for calling a client-side function 2020-12-24 23:55:19 -06:00
Blixibon
e0185f94f6 Added missing shader files 2020-12-17 02:07:13 -06:00
Blixibon
87cd9b24bb Mapbase v6.1
- Added postprocess_controller entity from later versions of Source
- Added env_dof_controller entity from later versions of Source
- Added SDK_Engine_Post and DepthOfField shaders from the Momentum repo/Alien Swarm SDK
- Fixed auto-breaking game_text/choreo text not null terminating
- Fixed console groups showing up at the wrong developer levels
- Added more mesages to console groups, including a new "NPC AI" console group
- Fixed typos and added elaboration in various cvars, console messages, etc.
- Fixed npc_metropolice not using frag grenades correctly when allowed to use them
- Fixed npc_metropolice not registering stitching squad slots in AI
- Fixed SetModel input late precache warning
- Fixed env_global_light angles resetting upon loading a save
- Fixed an issue with ScriptKeyValuesRead using the wrong name and having a memory leak
- Allowed VScript functions which return null strings to actually return null instead of empty strings
- Added VScript member variable documentation
- Fixed VScript documentation lines sometimes mixing together
- Fixed VScript singletons having a ! at the beginning of descriptions
- Added Color struct to VScript and allowed color-related inputs to use it
- Added more VScript functions for weapons, ammo, ragdolling, and response contexts
- Added GameRules singleton for VScript
- Exposed AI interaction system to VScript
- Recovered some lost documentation from older revisions of the Mapbase wiki
- Added a way to get the current game's load type in VScript
- Fixed Precache/SpawnEntityFromTable not accounting for a few important field types
- Added VScript functions for getting a player's eye vectors
- Fixed a crash caused by removing the active weapon of a Combine soldier while it's firing
- Changed the way metrocops deploy their manhacks so they could use their manhack death response properly
- Fixed "Use Server" keyvalue on game_convar_mod not working
- Adjusted CAI_Expresser in VScript
2020-12-17 03:38:23 +00:00
James Mitchell
782721edd4 Fixing issue with debug builds not working 2020-12-13 14:44:23 +11:00
James Mitchell
046391ef25 Fix vscript loading bug with vector in a table 2020-12-13 14:43:40 +11:00
Blixibon
eb014cce6c Mapbase v6.0
- Fixed path_track paths saving as pointers instead of handles
- Fixed player animations not falling to base class correctly
- Fixed logic_externaldata creating garbage in trailing spaces
- Added "SetHandModelSkin" input
- Added unique colors for various types of console message, adjustable via convars
- Added the ability to use map-specific weapon scripts
- Added a way to display (placeholder) text entirely from Faceposer scenes
- Added "autobreak" keyvalue to game_text, which automatically breaks long text into different lines
- Added the ability to change a game_text's font (very limited)
- Added LightToggle input to point_spotlight
- Added Enable/DisableSprites on npc_manhack
- Added ai_goal_police behavior from metrocops to Combine soldiers and citizens
- Added func_precipitation particle rain systems from the Alien Swarm SDK
- Added new func_precipitation spawnflags for controlling behavior in particle types
- Added "mapbase_version" cvar which shows the version of Mapbase a mod might be running on
- Fixed an oversight with NPC crouch activities which was causing npc_metropolice to stop firing in standoffs
- Added toggleable patches to npc_combine AI which make soldiers less likely to stand around without shooting or rush to melee when not needed
- Added key for custom logo font on env_credits scripts
- Added SetSpeed and SetPushDir inputs for trigger_push
- Added a bunch of I/O/KV to func_fish_pool to allow for more control over the fish
- Added OnLostEnemy/Player support for npc_combine_camera
- Added enhanced save/restore for the Response System, toggleable via convar
- Added a convar which allows users to disable weapon autoswitching when picking up ammo
- Split VScript base script into its own file
- Added VScript descriptions for NPC squads and the manager class which handles them
- Moved several classes, functions, etc. to the VScript library itself for future usage in other projects, like VBSP
- Added VScript to VBSP with basic map file interfacing
- Made some VScript documentation more clear due to deprecation of online documentation
- Added VScript "hook" registration, creating a standardized system which shows up in script_help documentation
- Added VScript-driven custom weapons
- Added clientside VScript scopes
- Added a bunch of weapon-related VScript functions
- Split a bunch of cluttered VScript stuff into different files
- Added VScript functions for "following" entities/bonemerging
- Added VScript functions for grenades
- Added a few more VScript trigger functions
- Added OnDeath hook for VScript
- Fixed documentation for aliased functions in VScript
- Fixed $bumpmask not working on SDK_LightmappedGeneric
- Made vertex blend swapping in Hammer use a constant instead of a combo (makes it easier to compile the shader, especially for $bumpmask's sake)
- Fixed brush phong, etc. causing SDK_WorldVertexTransition to stop working
- Added limited support for $envmapmask in the bumpmapping shader
- Fixed more issues with parallax corrected cubemaps and instances
- Made instance variable recursion consistent with VMFII
2020-11-26 02:26:55 +00:00
ToothpasteVixen
0b5a0c8e2f
Fixed Shadow filtering
Using MATERIAL_RT_DEPTH_ONLY disables hardware filtering, which causes shadows to be pixelated, even with pcf. changing it back to MATERIAL_RT_DEPTH_NONE re-enables hardware filtering, while still working as a depth texture.
2020-11-17 12:03:22 +13:00
samisalreadytaken
599a93e7bc vscript additions and fixes:
baseanimating.h
baseanimating.cpp
   - Added CBaseAnimating::SequenceDuration (ScriptSequenceDuration)
   - Added CBaseAnimating::GetPlaybackRate
   - Added CBaseAnimating::SetPlaybackRate
   - Added CBaseAnimating::GetCycle
   - Added CBaseAnimating::SetCycle

triggers.h
triggers.cpp
   - Fixed CTriggerCamera::ScriptSetFov setting player FOV while disabled
   - Added CBaseTrigger::Enable
   - Added CBaseTrigger::Disable
   - Added CBaseTrigger::TouchTest
   - Added CBaseTrigger::IsTouching (ScriptIsTouching)

vscript_server.nut
vscript_server.cpp
   - Added CEntities::FindByClassnameWithinBox
   - Added ::SendToConsoleServer
   - Added ::CancelEntityIOEvent
   - Added ::GetEntityIOEventTimeLeft
   - Moved ScriptDispatchParticleEffect to shared code

eventqueue.h
cbase.h
cbase.cpp
   - Set entity I/O con output colour
   - Added (CEventQueue::CancelEventsByInput)
   - Added (CEventQueue::RemoveEvent)
   - Added (CEventQueue::GetTimeLeft)

baseentity.h
baseentity.cpp
   - Added CBaseEntity::SetTransmitState
   - Added CBaseEntity::GetTransmitState
   - Added CBaseEntity::AcceptInput (ScriptAcceptInput)
   - Added CBaseEntity::FireOutput (ScriptFireOutput)
   - Added CBaseEntity::GetMaxOutputDelay
   - Added CBaseEntity::CancelEventsByInput
   - Added player_use event on InputUse
   - Fixed InputKill on players

ivscript.h
vscript_squirrel.cpp
   - Added IScriptVM::ArrayAppend
   - Fixed buffer overflow crash
   - Increased print buffer to 2048 from 256
   - Set vscript print output colour

vscript_funcs_shared.cpp
   - Added CNetMsgScriptHelper
     (CScriptGameEventListener)
   - Added ::ListenToGameEvent
   - Added ::StopListeningToGameEvent
   - Added ::StopListeningToAllGameEvents
   - Added ::FireGameEvent
   - Added ::FireGameEventLocal
     (CScriptSaveRestoreUtil)
   - Added ::SaveTable
   - Added ::RestoreTable
   - Added ::ClearSavedTable
   - Added callbacks ::OnSave, ::OnRestore
     (CScriptReadWriteFile)
   - Added ::StringToFile
   - Added ::FileToString
   - Added GlobalSys::GetCommandLine
   - Added GlobalSys::CommandLineCheck
   - Added GlobalSys::CommandLineCheckStr
   - Added GlobalSys::CommandLineCheckFloat
   - Added GlobalSys::CommandLineCheckInt
   - Added ::GetCPUUsage
   - Added ::NXPrint
   - Added ::Msg (ScriptMsg)
   - Removed misplaced condition checks
   - Fixed ScriptEntitiesInBox, *AtPoint, *InSphere

logic_eventlistener.cpp
   - Removed redundant dev msg

gamestringpool.cpp
   - Fixed string pool dump sort
2020-10-27 02:22:18 +03:00
Blixibon
add157197f Mapbase v5.1
- Fixed a major oversight in Source 2013 which was causing some code to think all logic entities were worldspawn
- Added WIP background nodraw for point_cameras set to not draw skybox at all
- Fixed map-specific talker not flushing on restore
- Added optional HUD hint to code-based game instructor hints
- Added workaround for suspicious crashes in HL2 NPC rappelling code (reported by 1upD)
- Made antlions summoned by npc_antlionguard report as dead when removed with the "Kill" input
- Fixed math_mod not saving mod value (reported by Klems)
- Added SDK_WindowImposter, which uses the SteamPipe cubemap bug workaround and includes support for parallax corrected cubemaps
- Updated thirdpartylegalnotices.txt to mention the Squirrel API
- Fixed incorrect type checking for script instances in VScript
- Added a bunch of new misc. VScript constants
- Added a few new base VScript functions
- Added a separate "Clientside Script Language" keyvalue to worldspawn for VScript, allowing client scripts to use a different language from server scripts
- Fixed worldspawn crashing the game when running entity scripts (reported by krassell)
- Fixed manifests creating a second worldspawn, allowing them to function properly in HL2
- Added tons of remapping-related fixes for instances and manifests, including node IDs and overlay remapping
- Added a keyvalue to func_instance which allows vector axis lines to be remapped properly
- Added support for manifest root path instances in VBSP
- Added missing PrintBrushContents() contents to VBSP
- Added -nohiddenmaps parameter
- Made manifest cordon somewhat functional
2020-09-23 05:03:47 +00:00
samisalreadytaken
5e21095851 Move sqstdtime.h 2020-09-02 02:55:06 +03:00
samisalreadytaken
80822cdc11 Add back deprecated function names 2020-09-01 20:31:22 +03:00
samisalreadytaken
f8f47e4791 Add debugoverlay descriptions 2020-09-01 20:19:08 +03:00
samisalreadytaken
88cebe3eac Minor improvement in CDebugOverlayScriptHelper 2020-08-31 22:01:58 +03:00
samisalreadytaken
d13f2a3e71 Fix CBaseEntity::SetMass 2020-08-31 17:27:54 +03:00
samisalreadytaken
8672b7bb3f vscript changes:
c_baseentity.h
c_baseentity.cpp
   - Renamed GetLeftVector to GetRightVector
   - Renamed GetTeamNumber to GetTeam

baseentity.h
baseentity.cpp
   - Renamed GetLeftVector to GetRightVector
   - Renamed Get/SetRender functions (GetAlpha -> GetRenderAlpha)
   - Fixed CBaseEntity::GetScriptId
   - Added hook CBaseEntity::UpdateOnRemove
   - Added CBaseEntity::GetOrCreatePrivateScriptScope
   - Added CBaseEntity::GetDebugName
   - Added CBaseEntity::GetGravity
   - Added CBaseEntity::SetGravity
   - Added CBaseEntity::GetFriction
   - Added CBaseEntity::SetFriction
   - Added CBaseEntity::GetMass
   - Added CBaseEntity::SetMass
   - Added CBaseEntity::SetName (SetNameAsCStr)
   - Added CBaseEntity::SetParent (ScriptSetParent)
   - Added CBaseEntity::SetThink (ScriptSetThink)
   - Added CBaseEntity::StopThink (ScriptStopThink)
   - Added CBaseEntity::SetThinkFunction (ScriptSetThinkFunction)
   - Added CBaseEntity::StopThinkFunction (ScriptStopThinkFunction)
   - Added CBaseEntity::ApplyAbsVelocityImpulse
   - Added CBaseEntity::ApplyLocalAngularVelocityImpulse

player.h
player.cpp
   - Renamed GetPlayerUserId to GetUserID
   - Added CBasePlayer::GetFOV
   - Added CBasePlayer::GetFOVOwner (ScriptGetFOVOwner)
   - Added CBasePlayer::SetFOV (ScriptSetFOV)

vscript_consts_shared.cpp
   -Added RAD2DEG, DEG2RAD, MAX_COORD_FLOAT, MAX_TRACE_LENGTH

vscript_funcs_shared.cpp
   - Renamed IsClientScript,IsServerScript to IsClient,IsServer
   - Added IsDedicatedServer
   - Added NPrint (Con_NPrintf)
   - Removed DebugDrawBoxDirection (debugoverlay.BoxDirection)
   - Removed DebugDrawText (debugoverlay.Text)

vscript_server.cpp
   - Added CDebugOverlayScriptHelper (debugoverlay)
   - Added CEntities::GetLocalPlayer
   - Added DispatchParticleEffect (ScriptDispatchParticleEffect)
   - Removed DebugDrawBox (debugoverlay.Box)
   - Removed DebugDrawLine (debugoverlay.Line)

vscript_squirrel.cpp
   - Changed stub error messages for consistency and clarity
   - Changed errorfunc output to Warning instead of Msg
   - Added Msg, Warning
   - Added clamp, min, max, RemapVal, RemapValClamped
   - Added sqstdtime.h
   - Added clock, time, date
2020-08-30 15:58:34 +03:00
samisalreadytaken
0087e6d734 Fix string pool dump 2020-08-30 15:58:07 +03:00
Blixibon
c448f194ae Mapbase v5.0
- Added keyvalue to hl2_gamerules which allows respawning in singleplayer
- Added the game instructor system (including env_instructor_hint) from later Valve games using a VDC tutorial which adjusts the version from the Alien Swarm SDK to FPS rules and a Source 2013 environment; Also added new KV and icons for further control from mappers (tutorial mentioned by Maestra Fenix)
- Added L4D/TF2 glows + point_glow entity as an all-purpose SDK-based off-shoot of tf_glow
- Fixed weapon pickup sound not playing (reported by Sl0th and later Cvoxulary)
- Fixed env_projectedtextures not updating on save/load
- Added func_fake_worldportal, a spatial point_camera inspired by linked_portal_door based on SDK code alone (WIP, may be changed a lot in future updates)
- Added option for point_camera and func_reflective_glass to use different render targets, therefore allowing multiple cameras and mirrors to be active at the same time
- Added additional RT camera textures to choose from with a default of 3, but also controllable through a -numcameratextures command line param
- Added adjustable convars for main view NearZ and skybox NearZ (suggested by someone recently, also suggested by Klems over a year ago)
- Fixed map-specific localization files, cleaned up map-specific file code
- Added a new block to gameinfo.txt which allows mods to automatically append their own command line parameters
- Fixed math_lightpattern corruption when setting pattern/style while active
- Fixed the "Touch" input crashing when given no entity
- Added a way to add EFlags via keyvalue (suggested by Niker107)
- Fixed ai_script_conditions not working without a NPC actor (reported by MetroHam)
- Fixed point_radiation_source causing huge problems when intensity is 0, even though it was already advised against (reported by beefbacon)
- Added "Mapbase" header to Mapbase-specific code files
- Fixed an issue with updating sky_camera not obtaining area correctly, causing some entities to not draw in the skybox
- Added "CopyFogController" and "CopyFogControllerWithScale" inputs to sky_camera, which copy fog parameters directly from a fog controller
- Added "SetScale" input to sky_camera for live scale changing
- Added convar to control player crouch speed multiplier (suggested by ArtyIF)
- Added a ton of fixes for people running the Debug configuration of the codebase (partial credit to stepa2)
- Added support for pre-defined enums and constants in VScript, starting with various values from the SDK code (damage types, trace masks, etc.)
- Added limited support for Valve's Quaternion class in VScript
- Added new instance helper capabilities, destructible game instances, and other misc. changes to VScript library
- Replaced most of the VScript "accessor" classes with direct references to the original classes, as they were getting complicated fast and adding new VScript-only functions to the original classes might not be as bad as previously thought
- Added base NPC hooks for AI sensing in VScript (allows control over sight and hearing), also exposed CSound for it
- Added various functions and hooks for VPhysics integration in VScript
- Added VScript-based custom suit devices
- Expanded trace info exposed to VScript to allow plane and surface access (suggested by krassell)
- Added ability to insert localization strings through VScript
- Added various misc. VScript functions with various purposes, including reading/writing EFlags, movetypes, collision groups, etc.
- Fixed VBSP not being able to correctly parse parallax corrected cubemaps in maps with instances
2020-08-14 21:21:25 +00:00
Blixibon
f9ba141a31 Merge branch 'master' of https://github.com/mapbase-source/source-sdk-2013 2020-07-16 10:47:03 -05:00
Blixibon
63323222fe Mapbase v4.3
- Fixed a crash with multiple trigger_look targets
- Fixed an issue where some zombie submodel server ragdolls are not solid to the world
- Fixed a crash with certain instance classes being loaded in a savegame before the class is registered
- Added some of Tony Sergi's missing Source 2007 fixes (contributed by Kris)
- Added "ClientCommand" hook for VScript to allow handling of unknown console commands
- Added "PlayerRunCommand" hook for VScript to control player movement
- Added new button-related script functions for players (GetButtons, DisableButtons, etc.)
- Added CUserCmd accessor in VScript for the "PlayerRunCommand" hook
- Added "GetWaterLevel" function for VScript
- Exposed "Ignite" to VScript for controlling how a fire starts
- Fixed NPCs being unable to unholster weapons
- Fixed Mapbase crashing when Steam isn't running
- Fixed issues with angled/updating sky_camera save/restore
- Added VBSP "-skyboxcubemap" parameter to enable skybox default cubemaps + "-defaultcubemapres" to control their resolution
- Added ability to disable VScript in a map (and fixed a few potential complications from disabling VScript)
- Made clientside VScript only initialize after world is spawned in order to receive serverside script language in time
- Added tons of VScript functions to CBaseAnimating related to bodygroups, sequences, etc.
- Added VScript functions to players for getting user ID and player name, similar to logic_playerinfo
- Added a few L4D2 script functions missing from the ASW SDK
- Added "Localize" singleton with a single "GetTokenAsUTF8" function for getting localization strings
- Disabled r_hunkalloclightmaps by the request of various users (apparently this completely removes the "Engine hunk overflow" error and allows for really high-res lightmaps)
- Fixed npc_antlionguard NPC_TranslateActivity not hooking into base class (allows for VScript manipulation)
- Added various unused antlion guard activities to npc_antlionguard AI, allowing for usage as registered activities
- Added keyvalue to set LOS mask on combine_mine
- Added +USE bounding box limiter to prop_interactable
2020-07-16 15:43:30 +00:00
James Mitchell
57848d7e3b Making vscript register all classes 2020-07-12 11:46:43 +10:00