Commit graph

156 commits

Author SHA1 Message Date
hlstriker
a629a38627 Fixed players chat not showing to others (it was only showing to themselves). 2014-10-13 00:06:14 -07:00
squeek
8e52a86fd3 First pass at Lua panels, super basic implementation for now
* Can create new panels from Lua, but pretty much all they can do at the moment is draw a background
2014-10-13 00:06:13 -07:00
hlstriker
4fb1e2bc98 The start of some of the hammer entities. The code is an absolute mess/unsafe right now, I will clean it up when I'm done testing. 2014-10-13 00:06:13 -07:00
squeek
6a2d44ae76 Added a newline at the end of a console Msg because Msg's without newlines annoy me. 2014-10-13 00:06:12 -07:00
Dexter
845ebcae14 messing with built in location chat 2014-10-13 00:06:12 -07:00
Dexter
e50273e024 spawn only at spawns w/ same teamnum as me, temporary thing until lua is rigged up
(also doesnt work on first spawn cuz hl2dm code :P)
2014-10-13 00:06:11 -07:00
Dexter
e9669129a7 add some helper functions for more dynamic active team management 2014-10-13 00:06:11 -07:00
Dexter
c26dad0a15 rename CLASS_<ff class> to FF_CLASS_<class> to avoid confusion with Classify enums 2014-10-13 00:06:10 -07:00
Dexter
6deedf45a1 account for unassigned team on players & use CLASS enums for digging out index for teamlimits 2014-10-13 00:06:10 -07:00
Dexter
1f115eb8c5 team joining is kinda working now woo. use 'team' concommand 2014-10-13 00:06:09 -07:00
squeek
46658bdc5b Hooked up LevelInit and LevelShutdown to the ScriptManagers
Removed global Lua functions loadfile, load, loadstring, and dofile as they are potentially unsafe
2014-10-13 00:06:08 -07:00
Dexter
9c56bd60c3 start implementing actual team joinage action extreme
(added basic con command clientside wrapper that sends to engine->ServerCmd for this)
team finding & joining logic is in the team manager.. not player, might make too much sense!
auto-join is WIP
2014-10-13 00:06:08 -07:00
squeek
5e5f2a4914 More ScriptManager stuff
* Split the UIScriptManager and GameScriptManager into their own classes that inherit from ScriptManager so that they can have different implementations of Init, LevelInit, and stuff like that
 * Not many functionality changes, mostly cleanup
2014-10-13 00:06:07 -07:00
squeek
35bd31cb39 Alias client-only function VarArgs as server-only function UTIL_VarArgs and vice-versa so we can use them in shared code; they both do the exact same thing. 2014-10-13 00:06:07 -07:00
hlstriker
f77368db62 Added/modified HUD message wrappers. 2014-10-13 00:06:06 -07:00
hlstriker
67c8b23b93 Added wrapper functions for HUD messages. 2014-10-13 00:06:06 -07:00
Dexter
abdfa24fea remove stock vpc gen scripts/bats to avoid any confusion.. no.. i did not just run the default one...
Conflicts:
	mp/src/createallprojects
	mp/src/creategameprojects
2014-10-13 00:06:05 -07:00
Dexter
52a6d033ba localized strings for default team names cuz why not 2014-10-13 00:04:57 -07:00
Dexter
c9c90de4f3 refactor UpdateLimit / UpdateLimits -> UpdateClass / UpdateAllClassLimits so its clear what it does (and matches SetClassLimit) 2014-10-13 00:04:56 -07:00
Dexter
0d1b299a34 initialize all classes to -1 in a memset (like old code)
my dumb network right away idea was dumb and didnt really work
2014-10-13 00:04:56 -07:00
Dexter
c0625ca8d2 make class limits respect map (lua)/cvar if set, or min if both set 2014-10-13 00:04:55 -07:00
Dexter
38956aef8f ported FF Team -> new shared code team manager. nothing too exciting..
can now update team name with SetName() any time
2014-10-13 00:04:55 -07:00
hlstriker
bbeb6107be Fixed getting out of water when holding jump. 2014-10-13 00:04:54 -07:00
squeek
c4061fb5f7 A bunch of ScriptManager changes, still a lot more I want to do (and a bunch of cleanup), but committing what I have for now
* Made LoadFile check for execution errors as well as syntax errors (in 2006 FF execution errors were ignored)
 * Added client console command lua_dostring_ui that runs the given command arguments as Lua code in UIScriptManager's Lua environment
 * Loaded all default Lua libraries, but removed unsafe functions or made them safer (still some that need to be made safer)
 * Made Lua's print output to the console
 * Made Lua's require search the mod dir
 * UIScriptManager loads file ui/init.lua on client dll Init
2014-10-13 00:04:54 -07:00
hlstriker
df82d96409 Fixed an issue when trying to get out of water. 2014-10-13 00:04:53 -07:00
Dexter
88e40d9bc9 removed hl2dm spawn crap, tweaked default spawn code a little.
it grabs random info_ff_teamspawn, and if cant find any tries a info_player_start as last ditch
no revolutionary changes here
2014-10-13 00:04:52 -07:00
Dexter
0622f03f59 fix linux linkage finally 2014-10-13 00:04:52 -07:00
squeek
939411c752 Added our own server DLL interface class (CFF_SV_DLL_Interface) that inherits from CServerGameDLL
* Deleted ff_sv_gameinterface.cpp/.h, moved that code into ff_sv_dll_interface.cpp
Initialized g_GameScriptManager when server/client dlls call Init
2014-10-13 00:04:51 -07:00
squeek
9aa4479a03 - Added separate ScriptManagers for UI stuff and Game stuff (g_UIScriptManager (client-only) and g_GameScriptManager (client and server))
* Modified ScriptManager to have no static functions
- Added our own client DLL interface class (CFF_CL_DLL_Interface) that inherits from CHLClient
 * Moved all FF code out of cdll_client_int.cpp
 * Moved CHLClient class declaration to cdll_client_int.h
2014-10-13 00:04:51 -07:00
squeek
41947795c8 Reverted server/gameinterface.cpp back to its default code (had some commented out Lua test stuff in it) 2014-10-13 00:04:50 -07:00
Dexter
c6be12a4e0 tweaked lua VPC to match it's actual lib makefile, a few tweaks. still not working on linux tho
Conflicts:
	mp/src/thirdparty/lua/lua.vpc
2014-10-13 00:04:50 -07:00
Dexter
54b5307c72 crap, server VPC script had some redundant crap 2014-10-13 00:04:42 -07:00
Dexter
f72554fb71 this is dumb 2014-10-13 00:04:41 -07:00
squeek
06b498005e A bit of cleanup in the ff_sh_gamemovement header
* Broke up function declarations into 3 categories: FF-specific, Extended (meaning the BaseClass function is always called in the overwritten function), and Overwritten (meaning the BaseClass function is probably never called)
2014-10-13 00:04:41 -07:00
squeek
3bb04eebd3 A bit of cleanup
* Moved #defines and variables into their own files (not sure how best to handle this, just copying movevars_shared.cpp/.h for now)
 * Added Doxygen comment blocks to each function implementation
2014-10-13 00:04:40 -07:00
squeek
69d7defcda A bit more informative DevMsg's about movement code 2014-10-13 00:04:40 -07:00
squeek
daed6c867d Fixed trimping not being triggered while rampsliding (issue #434)
- A CategorizePosition call that sets the player's GroundEntity if they have jump pressed that was called every PlayerMove in 2006 code is called only when needed in 2013 code. Made it call CategorizePosition if jump is pressed. This fix could potentially be handled better.
2014-10-13 00:04:39 -07:00
squeek
b282186df3 Set movement variables to the correct FF defaults (sv_friction 5, sv_maxspeed 600, sv_accelerate 14) 2014-10-13 00:04:39 -07:00
Dexter
6be4165a85 test
Conflicts:
	mp/src/thirdparty/luabind/luabind.vpc
2014-10-13 00:04:35 -07:00
Dexter
0d20ce6447 yep this is still needed 2014-10-13 00:04:28 -07:00
Dexter
03280a0b9a add missing linux32 / osx libraries (valve had forgot to add them .. )
Conflicts:
	mp/src/lib/public/linux32/libSDL2.so
2014-10-13 00:04:28 -07:00
Dexter
1609c58888 potential luabind fix for gcc
Conflicts:
	mp/src/thirdparty/luabind/detail/call_function.hpp
	mp/src/thirdparty/luabind/detail/call_member.hpp
	mp/src/thirdparty/luabind/wrapper_base.hpp
2014-10-13 00:04:22 -07:00
squeek
f8b8321865 Moved CanJump logic into it's own function 2014-10-13 00:04:16 -07:00
Dexter
df33b47da1 undo previous commits, gotta find a fix compatible with vc++ 2014-10-13 00:04:16 -07:00
Dexter
91b9020f9f (part 2 oops..) fix for boost on gcc, #elif works differently (more correct) and breaks boost http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36453
the two .sh files got windows newlines, so fix those too while we're here

note: should use an awk script for "#elif BOOST_PP" -> "#else if BOOST_PP" transform ..

Conflicts:
	mp/src/thirdparty/boost/functional/overloaded_function.hpp
	mp/src/thirdparty/boost/functional/overloaded_function/detail/base.hpp
	mp/src/thirdparty/boost/local_function/aux_/function.hpp
	mp/src/thirdparty/boost/mpl/apply_wrap.hpp
	mp/src/thirdparty/boost/mpl/aux_/advance_backward.hpp
	mp/src/thirdparty/boost/mpl/aux_/advance_forward.hpp
	mp/src/thirdparty/boost/mpl/bind.hpp
	mp/src/thirdparty/boost/numeric/conversion/detail/numeric_cast_traits.hpp
	mp/src/thirdparty/boost/spirit/home/phoenix/statement/detail/catch_all_eval.hpp
	mp/src/thirdparty/boost/spirit/home/phoenix/statement/detail/catch_eval.hpp
	mp/src/thirdparty/boost/variant/detail/substitute.hpp
2014-10-13 00:04:15 -07:00
Dexter
4babbaf7d8 fix for boost on gcc, #elif works differently (more correct) and breaks boost http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36453
the two .sh files got windows newlines, so fix those too while we're here

Conflicts:
	mp/src/thirdparty/boost/parameter/aux_/python/invoker_iterate.hpp
	mp/src/thirdparty/boost/python/detail/result.hpp
	mp/src/thirdparty/boost/python/detail/target.hpp
2014-10-13 00:04:06 -07:00
Dexter
66d119efa5 this is really dumb 2014-10-13 00:03:53 -07:00
squeek
5ef43552e9 Implementing double jumping using a static float for now 2014-10-13 00:03:52 -07:00
squeek
426b88ef40 * Ported CFFGameMovement::CheckJumpButton
- Rewrote a lot of the function to make it less redundant/cleaner, moved some things into their own functions
 - Downtrimping, trimping, soft/hard caps should work; doublejump is not yet ported
 - Note: The client seems to call CheckJumpButton like 5 times for every one time the server does; need to investigate that more
* Ported headcrush
 - Untested
* Made default gravity for FF 800
2014-10-13 00:03:52 -07:00
squeek
2b4a3ce44b Fix for detection of sharking that I broke (water level <= waist level, not < waist level) 2014-10-13 00:03:51 -07:00
squeek
9818913608 Our very own player class! (CFF_SH_Player, CFF_CL_Player, CFF_SV_Player)
- Note: FFPlayer still derives from CBaseHLPlayer, which has HL-style sprinting code and whatnot, will probably want to end up removing that inheritance
 - All references to the old HL2MP player have been switched to our FF player (temporarily if we end up replacing those files)
2014-10-13 00:03:51 -07:00
Dexter
1d6736cb3c linux vpc running barfer scripts 2014-10-13 00:03:50 -07:00
squeek
2c2d486a9d Made everything comply with the naming scheme we're going with (subject to change?)
- All classes are named CFF_<CL/SV/SH>_ClassName
 - All files are named ff_<cl/sv/sh>_filename

Conflicts:
	mp/src/game/shared/ff/ff_sh_scriptman.h
2014-10-13 00:03:50 -07:00
Dexter
03ec8eec87 oops add missing files RIP 2014-10-13 00:03:44 -07:00
squeek
f5ed33341a * Cleaned up the gamemovement.cpp port
- Removed all instances of m_surfaceFriction being commented out and fixed m_surfaceFriction being set to .25 whenever in the air (this should allow for materials to set their own friction and actually have it do something)
 - Set g_bMovementOptimizations back to true (wasn't meant to be false)
 - Reverted any ported code in functions overwritten in FF's own GameMovement class and added a comment above the base class saying it's unused
* Added C_FF_SH_GameMovement class (is this an acceptable class naming scheme?)
 - Lots of code left unported in this file
 - Overwrites the PlayerRoughLandingEffects, Duck, and FinishUnDuck functions for now
* Excluded hl_gamemovement files from the project (there can only be one IGameMovement interface exposed at a time)

Conflicts:
	mp/src/game/client/client_ff.vpc
2014-10-13 00:03:41 -07:00
Dexter
1ef1520ada ff_scriptman rename to ff_scriptman_shared
Conflicts:
	mp/src/game/shared/ff/ff_scriptman_shared.cpp
2014-10-13 00:03:35 -07:00
Dexter
13b0113850 hl2mp -> FF gamerules
Conflicts:
	mp/src/game/server/ff/ff_client.cpp
	mp/src/game/server/ff/ff_gameinterface.cpp
	mp/src/game/server/server_ff.vpc
	mp/src/game/shared/ff/ff_shared.vpc
2014-10-13 00:03:20 -07:00
Dexter
09aa266e88 start of gamemovement port. a few things stubbed out:
player fall damage (seems improved since 2006, waiting on Player code)
spy cloak speed mods (waiting for player obviously)

kinda funny, hl2dm sprint makes you go slower since the tfc friction values :D
2014-10-13 00:02:50 -07:00
Dexter
24aa17d15e move lua + luabind into 'game' so you dont have to go generate a second set of projects, and they are built when game is (no external deps go missing)
Conflicts:
	mp/src/vpc_scripts/groups_ff.vgc
	mp/src/vpc_scripts/projects_ff.vgc
2014-10-13 00:02:50 -07:00
Dexter Haslem
caec837a42 remove unneeded header 2013-10-21 22:39:55 -06:00
Dexter Haslem
76a2ad37c3 steamworks test
should get "Steam AppID = 253530" in console at start (if you start
FortressForever game like you should idiot)
2013-10-21 22:38:02 -06:00
Dexter Haslem
1a8a985965 remove that note -> shared vpc 2013-09-15 00:59:26 -06:00
Dexter Haslem
4a88f21d70 start of scriptman port. needs gameplay done to continue 2013-09-15 00:40:02 -06:00
Dexter Haslem
40b86daaa7 made lua scriptman (stub) shared 2013-09-14 23:49:42 -06:00
Dexter Haslem
41130702a1 updated VPC structure
I was wrong about having 'to include the entire contents' of HL2MP VPCs.
Made it easy to remove HL2DM sdk files as we go without touching stock VPCs,
through usage of '-$File' wizardry. it needs folder structure to match for some
wacky fun reason though.
2013-09-14 23:40:57 -06:00
Dexter Haslem
4278ad10cc fix client build expecting luaman 2013-09-14 23:01:31 -06:00
Dexter Haslem
65ddb386de Merge branch 'luabind' into develop
oops shoulda done this before previous work, no prob
nuked the test luaman, hope no problem there

added scriptman serverside like 2.46 for now, will move
to shared once i get this working

Conflicts:
	mp/src/game/server/server_ff.vpc
2013-09-14 22:58:02 -06:00
Dexter Haslem
e287b1516a hello FF world
- had to move HL2DM VPC stuff INTO ff server vpc so we can start (re)moving
nonspecific code as it is implemented
2013-09-14 22:44:17 -06:00
Dexter Haslem
313234c212 Merge branch 'macosxchanges' into develop 2013-09-06 20:58:32 -06:00
Joe Ludwig
80cf6f02c3 Added missing libs for linux and OSX in their new location. 2013-09-05 18:17:03 -07:00
Nicholas Hastings
cb55ade0b7 Add missing executable flag to xcode_ccache_wrapper. 2013-09-05 08:41:38 -04:00
Dexter Haslem
9438a3a75c fix static linking for lua + luabind
note: 'build as C++' does NOT work for lua static lib
the name mangling fucks it even with the .hpp, didnt look into
2013-09-05 00:56:25 -06:00
Dexter Haslem
2321414b29 bat for spitting out lua projects 2013-09-04 21:55:07 -06:00
Dexter Haslem
afd5643d07 remove unused $SRCDIR. removing $BASE fucks things up 2013-09-04 21:52:08 -06:00
Dexter Haslem
461473f467 build luabind dll w/ VPC 2013-09-04 21:50:47 -06:00
Dexter Haslem
52a425ec81 build lua with VPC
dynamically linked, can flip a switch to use static
2013-09-04 21:14:48 -06:00
Dexter Haslem
856979e24b Merge branch 'develop' into luabind 2013-09-04 20:03:45 -06:00
Dexter Haslem
99ef655f72 added ff specific shader building bat per wiki
note the dumb absolute path you will need to change to steam directory
on your machine! woohoo
2013-09-04 19:35:55 -06:00
Dexter Haslem
a55a85df87 use FF Specific VPC group file
might make use of this later to build external libs
+ add some notes so i dont forget how this works
2013-09-04 19:20:12 -06:00
Dexter Haslem
ec2dcd13f8 add ff specific shader VPC 2013-09-04 18:47:56 -06:00
Dexter Haslem
0113d9870c VPC tweaks (oops forgot to commit these)
reverted projects.vgc back to valve defaults
modified default.vgc w/ 'FF' game string, and looks for FF project file
regenerate your projects
2013-09-04 18:42:28 -06:00
Dexter Haslem
348e2f83ed add vpc bats for generating FF specific projects
use these, not the default ones! I made it kick out game_ff /
everything_ff solutions. using a different game-string (in default.vgc)
correctly names solutions client_<gamestr>.vcxproj, etc. you pass
gamestring to vpc so it knows which one to use
2013-09-04 18:38:02 -06:00
Dexter Haslem
05c5591a1c fix VPC project scripts
1: restore valve default project.vgc
2: point default.vgc to our specific projects_ff.vgc and use ff game
string
3: add projects_ff.vgc pointing at our ff game/client vpcs that exist
already
2013-09-04 18:34:55 -06:00
squeek
91b3771d27 Now that building raytrace.lib has been added to the game project, remove it from the repo (since it will more than likely show as modified and we don't want to ever commit it I don't think) 2013-09-04 00:08:00 -07:00
squeek
00db1dda01 Merge branch 'master' into develop
Conflicts:
	mp/src/lib/public/mathlib.lib
	mp/src/lib/public/tier1.lib
	mp/src/lib/public/vgui_controls.lib
2013-09-04 00:00:58 -07:00
Joe Ludwig
1524321396 * Fixed Source Mod back-compatability by reordering methods in a couple interfaces.
* Added missing singleplayer OSX libs
* Updated vpc and libs.
2013-09-03 16:02:10 -07:00
Joe Ludwig
a0c29e7dd6 General:
* Fixed a variety of server browser issues with mods based on this SDK
* Fixed many warnings on various platforms
* Added source code for fgdlib and raytrace
* Updated many source files with the latest shared source from TF2.

OSX:
* Added support for Xcode 4.6
* Switched OSX builds to use Xcode instead of makefiles
* Moved libs from src/lib/osx32 to src/lib/public/osx32 or src/lib/common/osx32 to match windows better.

Linux:
* Moved libs from src/lib/linux32 to src/lib/public/linux32 or src/lib/common/linux32 to match windows better.
2013-09-02 11:39:10 -07:00
squeek
4945706859 - Added Lua, Luabind, and Boost (Boost is required by Luabind)
- Added simple Lua integration (use console commands lua_dostring_sv and lua_dostring_cl) and redirected Lua's print function to output to the console
- Added untested Linux and OSX binaries I found various places online
Linux and OSX Lua libraries come from: http://sourceforge.net/projects/luabinaries/files/5.1.4/
Linux Luabind libraries come from: https://launchpad.net/ubuntu/+source/luabind/0.9.1+dfsg-5
2013-09-01 02:16:23 -07:00
squeek
79efcf837b Seriously, delete these lib files from the repo 2013-09-01 01:03:52 -07:00
squeek502
27c0eca26f Removed the .lib files that are built with the game dlls 2013-08-31 22:11:15 -07:00
squeek502
4f3b8dfe8f Added mod-specific vpc files.
Add any new source files to client_ff.vpc and/or server_ff.vpc. To
remove hl2mp files, put a - infront of the $File line inside the
_ff.vpc's. Don't think there's any reason to mess with the _hl2mp.vpc
files anymore.
2013-08-31 21:46:11 -07:00
Joe Ludwig
d9ac276a95 Added bloom shader and screenspace effect helpers as examples for the SDK. 2013-07-30 15:10:15 -07:00
Joe Ludwig
29f290f787 Added missing OSX and Linux shaderlibs 2013-07-18 10:11:37 -07:00
Joe Ludwig
e16ea21dc8 * Added support for building shaders in your mod
* Added nav mesh support
* fixed many warnings and misc bugs
* Fixed the create*projects scripts in mp
* Added a bunch of stuff to .gitignore
2013-07-17 18:26:59 -07:00
Joe Ludwig
6a271d4a68 Merge pull request #36 from AnAkIn1/fogplayerparams_fix
Fix typo and value which should be non float
2013-07-16 17:18:23 -07:00
Jørgen P. Tjernø
3527e2f9f1 Normalize line endings
Fixes issue #75.
2013-07-05 12:09:48 -07:00
Joe Ludwig
cc9c12c5fd Updated the libs. Updated vpc_* to include support for $Conditional in .vgc files. Included vstdlib_exclude.vpc for the OSX builds. 2013-07-05 11:28:48 -07:00
Joe Ludwig
3aacf913d5 Merge https://github.com/ValveSoftware/source-sdk-2013 2013-07-04 11:33:04 -07:00
Joe Ludwig
89ab753e6a Fixed execute permissions on OSX/Linux scripts and binaries. 2013-07-04 11:28:48 -07:00
Joe Ludwig
77b376f8a0 * Switched the SDK from checked-in projects to VPC, the Valve Project Creator. See the Getting Started document on the wiki for details.
* Pulled in bug fixes from HL2 and HL2MP.
2013-07-04 11:20:31 -07:00