Synced gdc-psyfork (NPOTB).
authorNicholas Hastings <skamonkey@gmail.com>
Mon Apr 29 20:51:54 2013 -0400 (2013-04-29)
changeset 3902691bd6a50850
parent 3901 dfad9b7c68ae
child 3903 7d07b4f23cd0
Synced gdc-psyfork (NPOTB).
tools/gdc-psyfork/example-scripts/gdc_auto.sh
tools/gdc-psyfork/example-scripts/gdc_core.sh
tools/gdc-psyfork/example-scripts/gdc_csgo.sh
tools/gdc-psyfork/example-scripts/gdc_cstrike.sh
tools/gdc-psyfork/symbols.txt
     1.1 --- a/tools/gdc-psyfork/example-scripts/gdc_auto.sh	Thu Apr 25 11:41:49 2013 -0400
     1.2 +++ b/tools/gdc-psyfork/example-scripts/gdc_auto.sh	Mon Apr 29 20:51:54 2013 -0400
     1.3 @@ -34,7 +34,7 @@
     1.4  	filename=$(date +%Y-%m-%d-%H%M%S)-${lcgame}.log
     1.5  	fullfilename=log/$filename
     1.6  
     1.7 -	./gdc_${lcgame}.sh auto | tee -a ${fullfilename}
     1.8 +	./gdc_${lcgame}.sh auto 2>&1 | tee -a ${fullfilename}
     1.9  
    1.10  	if [ ${PIPESTATUS[0]} -ne 0 ] ; then
    1.11  	       	echo -e "No change. Removing useless log.\n"
     2.1 --- a/tools/gdc-psyfork/example-scripts/gdc_core.sh	Thu Apr 25 11:41:49 2013 -0400
     2.2 +++ b/tools/gdc-psyfork/example-scripts/gdc_core.sh	Mon Apr 29 20:51:54 2013 -0400
     2.3 @@ -1,9 +1,18 @@
     2.4  #!/bin/bash
     2.5  
     2.6 +SCRIPT_PATH=/users/psychonic/gdc
     2.7 +
     2.8 +# with trailing slash or undefined for system default
     2.9 +MONO_BIN_PATH=/apps/mono-2.10.9/bin/
    2.10 +
    2.11 +DD_PATH=${SCRIPT_PATH}/dd
    2.12 +ENGINE_PATH=${DD_PATH}/${ENGINE_PATH_FROM_DD}
    2.13 +
    2.14 +SM_PATH=${SCRIPT_PATH}/sourcemod-central
    2.15 +SMRCON_PATH=${SCRIPT_PATH}/SMRCon
    2.16 +
    2.17  # Do not run this file directly. It is meant to be called by other scripts
    2.18  
    2.19 -SM_PATH=/home/gdc/sourcemod-central
    2.20 -
    2.21  ENGINE_BIN=${ENGINE_PATH}/bin/engine
    2.22  GAME_BIN=${ENGINE_PATH}/${GAME_DIR}/bin/server
    2.23  STEAMINF=${ENGINE_PATH}/${GAME_DIR}/steam.inf
    2.24 @@ -31,7 +40,7 @@
    2.25  fi
    2.26  
    2.27  export RDTSC_FREQUENCY="disabled"
    2.28 -export LD_LIBRARY_PATH=".:${ENGINE_PATH}/bin:$LD_LIBRARY_PATH"
    2.29 +export LD_LIBRARY_PATH="${ENGINE_PATH}:${ENGINE_PATH}/bin:$LD_LIBRARY_PATH"
    2.30  
    2.31  UPDATE=0
    2.32  if [ "$1" == "update" ] ; then
    2.33 @@ -43,19 +52,28 @@
    2.34  if [ ${UPDATE} -eq 1 ] ; then
    2.35  	cd ${DD_PATH}
    2.36  
    2.37 -	if [ "${DD_GAME}" != "" ] ; then
    2.38 -		DD_OPT_AUTH=`tr '\r\n' ' ' < dd-login-info.txt`
    2.39 -	elif [ "${DD_APP}" != "" ] ; then
    2.40 -		DD_OPT_AUTH=`tr '\r\n' ' ' < dd-login-info.txt`
    2.41 -	else
    2.42 -		echo "Error: neither DD_GAME nor DD_APP are set!"
    2.43 -		exit 1
    2.44 +	if [ "${DD_NEEDS_AUTH}" != "" ] ; then
    2.45 +		if [ "${DD_GAME}" != "" ] ; then
    2.46 +			DD_OPT_AUTH=`tr '\r\n' ' ' < dd-login-info.txt`
    2.47 +		elif [ "${DD_APP}" != "" ] ; then
    2.48 +			DD_OPT_AUTH=`tr '\r\n' ' ' < dd-login-info.txt`
    2.49 +		else
    2.50 +			echo "Error: neither DD_GAME nor DD_APP are set!"
    2.51 +			exit 1
    2.52 +		fi
    2.53 +	fi
    2.54 +
    2.55 +	if [ "${DD_BETA}" != "" ] ; then
    2.56 +		DD_OPT_BETA="-beta ${DD_BETA}"
    2.57 +		if [ "${DD_BETA_PASSWORD}" != "" ] ; then
    2.58 +			DD_OPT_BETA_PASSWORD="-betapassword ${DD_BETA_PASSWORD}"
    2.59 +		fi
    2.60  	fi
    2.61  
    2.62  	for i in 1 2 3 4 5
    2.63  	do
    2.64  		if [ "${DD_GAME}" != "" ] ; then
    2.65 -			mono DepotDownloader.exe     \
    2.66 +			${MONO_BIN_PATH}mono DepotDownloader.exe     \
    2.67  				-game "${DD_GAME}"   \
    2.68  				-dir ${DD_DIR}       \
    2.69  				-filelist server.txt \
    2.70 @@ -64,16 +82,18 @@
    2.71  				${DD_OPT_CELL}       \
    2.72  				${DD_OPT_AUTH}
    2.73  		else
    2.74 -			mono DepotDownloader.exe     \
    2.75 +			${MONO_BIN_PATH}mono DepotDownloader.exe     \
    2.76  				-app "${DD_APP}"     \
    2.77  				-dir ${DD_DIR}       \
    2.78  				-filelist server.txt \
    2.79  				-all-platforms       \
    2.80  				-no-exclude          \
    2.81  				${DD_OPT_CELL}       \
    2.82 -				${DD_OPT_AUTH}
    2.83 +				${DD_OPT_AUTH}       \
    2.84 +				${DD_OPT_BETA}       \
    2.85 +				${DD_OPT_BETA_PASSWORD}
    2.86  		fi
    2.87 -		
    2.88 +
    2.89  		echo
    2.90  
    2.91  		if [ $? == 0 ] ; then
    2.92 @@ -106,7 +126,8 @@
    2.93  fi
    2.94  
    2.95  # update sourcemod
    2.96 -cd ${SM_PATH}/tools/gdc-psyfork
    2.97 +echo Updating SourceMod repo
    2.98 +cd ${SM_PATH}
    2.99  hg pull -u
   2.100  
   2.101  echo -e "\n"
     3.1 --- a/tools/gdc-psyfork/example-scripts/gdc_csgo.sh	Thu Apr 25 11:41:49 2013 -0400
     3.2 +++ b/tools/gdc-psyfork/example-scripts/gdc_csgo.sh	Mon Apr 29 20:51:54 2013 -0400
     3.3 @@ -1,17 +1,13 @@
     3.4  #!/bin/bash
     3.5  
     3.6 -# Path to DepotDownloader
     3.7 -DD_PATH=/home/gdc/dd
     3.8 -
     3.9  # Path for DepotDownloader to download to, relative to DD_PATH
    3.10  DD_DIR=csgo
    3.11  
    3.12  # AppId to use for DepotDownloader for Steam3 content (steamcmd app_update number)
    3.13  DD_APP=740
    3.14  
    3.15 -# Absolute path to game's engine directory
    3.16 -ENGINE_PATH=${DD_PATH}/${DD_DIR}/
    3.17 -
    3.18 +# Relative path to game's engine directory from DD
    3.19 +ENGINE_PATH_FROM_DD=${DD_DIR}/
    3.20  # Game's directory name
    3.21  GAME_DIR=csgo
    3.22  
     4.1 --- a/tools/gdc-psyfork/example-scripts/gdc_cstrike.sh	Thu Apr 25 11:41:49 2013 -0400
     4.2 +++ b/tools/gdc-psyfork/example-scripts/gdc_cstrike.sh	Mon Apr 29 20:51:54 2013 -0400
     4.3 @@ -4,24 +4,31 @@
     4.4  DD_PATH=/home/gdc/dd
     4.5  
     4.6  # Path for DepotDownloader to download to, relative to DD_PATH
     4.7 -DD_DIR=source
     4.8 +DD_DIR=css
     4.9 +
    4.10 +# App ID
    4.11 +DD_APP=232330
    4.12  
    4.13 -# Game to use for DepotDownloader for Steam2 content (hldsupdatetool -game param)
    4.14 -DD_GAME="Counter-Strike Source"
    4.15 +# Beta name
    4.16 +DD_BETA=prerelease
    4.17  
    4.18 -# Absolute path to game's engine directory
    4.19 -ENGINE_PATH=${DD_PATH}/${DD_DIR}/css
    4.20 +# Beta passowrd, if applicable
    4.21 +#DD_BETA_PASSWORD=passwordhere
    4.22  
    4.23 +# Relative path to game's engine directory from DD
    4.24 +ENGINE_PATH_FROM_DD=${DD_DIR}
    4.25  # Game's directory name
    4.26  GAME_DIR=cstrike
    4.27  
    4.28 +BIN_EXT="_srv"
    4.29 +
    4.30  # SM gamedata engine name
    4.31 -ENGINE_NAME=orangebox_valve
    4.32 +ENGINE_NAME=css
    4.33  
    4.34  # List of gamedata files to run checks on
    4.35  gamedata_files=(
    4.36  	"sdktools.games/game.cstrike.txt"
    4.37 -	"sdktools.games/engine.ep2valve.txt"
    4.38 +	"sdktools.games/engine.css.txt"
    4.39  	"sm-cstrike.games/game.css.txt"
    4.40  )
    4.41  
     5.1 --- a/tools/gdc-psyfork/symbols.txt	Thu Apr 25 11:41:49 2013 -0400
     5.2 +++ b/tools/gdc-psyfork/symbols.txt	Mon Apr 29 20:51:54 2013 -0400
     5.3 @@ -91,6 +91,82 @@
     5.4  			"CTFFlameThrower::FireFlameRocket"	"_ZN16CTFWeaponBaseGun15FireFlameRocketEP9CTFPlayer"
     5.5  			"CTFPlayer::GetMaxHealth"			"_ZNK11CBaseEntity12GetMaxHealthEv"
     5.6  			"CBaseEntity::GetBaseEntity"		"_ZN11CBaseEntity13GetBaseEntityEv"
     5.7 +			"RocketTouch"				"_ZN13CTFBaseRocket11RocketTouchEP11CBaseEntity"
     5.8 +			"SRocketTouch"                           "_ZN13CTFBaseRocket11RocketTouchEP11CBaseEntity"
     5.9 +			
    5.10 +			// V V
    5.11 +			"CBaseEntity::GetModelIndex"    "_ZNK11CBaseEntity13GetModelIndexEv"
    5.12 +			"CBaseEntity::SetModelIndex"    "_ZN11CBaseEntity13SetModelIndexEi"
    5.13 +			"CBaseEntity::GetServerClass"   "_ZN11CBaseEntity14GetServerClassEv"
    5.14 +			"CBaseEntity::GetDataDescMap"   "_ZN11CBaseEntity14GetDataDescMapEv"
    5.15 +			"CBaseEntity::ShouldCollide"    "_ZNK11CBaseEntity13ShouldCollideEii"
    5.16 +			"CBaseEntity::ShouldTransmit"   "_ZN11CBaseEntity14ShouldTransmitEPK18CCheckTransmitInfo"
    5.17 +			"CBaseEntity::UpdateTransmitState"      "_ZN11CBaseEntity19UpdateTransmitStateEv"
    5.18 +			"CBaseEntity::SetTransmit"      "_ZN11CBaseEntity11SetTransmitEP18CCheckTransmitInfob"
    5.19 +			"CBaseEntity::Spawn"    "_ZN11CBaseEntity5SpawnEv"
    5.20 +			"CBaseEntity::SetModel" "_ZN11CBaseEntity8SetModelEPKc"
    5.21 +			"CBaseEntity::KeyValue" "_ZN11CBaseEntity8KeyValueEPKcS1_"
    5.22 +			"CBaseEntity::Activate" "_ZN11CBaseEntity8ActivateEv"
    5.23 +			"CBaseEntity::SetParent"        "_ZN11CBaseEntity9SetParentEPS_i"
    5.24 +			"CBaseEntity::AcceptInput"      "_ZN11CBaseEntity11AcceptInputEPKcPS_S2_9variant_ti"
    5.25 +			"CBaseEntity::Think"    "_ZN11CBaseEntity5ThinkEv"
    5.26 +			"CBaseEntity::GetResponseSystem"        "_ZN11CBaseEntity17GetResponseSystemEv"
    5.27 +			"CBaseEntity::OnTakeDamage"     "_ZN11CBaseEntity12OnTakeDamageERK15CTakeDamageInfo"
    5.28 +			"CBaseEntity::Event_Killed"     "_ZN11CBaseEntity12Event_KilledERK15CTakeDamageInfo"
    5.29 +			"CBaseEntity::ChangeTeam"       "_ZN11CBaseEntity10ChangeTeamEi"
    5.30 +			"CBaseEntity::Use"      "_ZN11CBaseEntity3UseEPS_S0_8USE_TYPEf"
    5.31 +			"CBaseEntity::Touch"    "_ZN11CBaseEntity5TouchEPS_"
    5.32 +			"CBaseEntity::Blocked"  "_ZN11CBaseEntity7BlockedEPS_"
    5.33 +			"CBaseEntity::UpdateOnRemove"   "_ZN11CBaseEntity14UpdateOnRemoveEv"
    5.34 +			"CBaseEntity::Teleport" "_ZN11CBaseEntity8TeleportEPK6VectorPK6QAngleS2_"
    5.35 +			"CBaseEntity::CreateVPhysics"   "_ZN11CBaseEntity14CreateVPhysicsEv"
    5.36 +			"CBaseEntity::ForceVPhysicsCollide"     "_ZN11CBaseEntity20ForceVPhysicsCollideEPS_"
    5.37 +			"CBaseEntity::VPhysicsDestroyObject"    "_ZN11CBaseEntity21VPhysicsDestroyObjectEv"
    5.38 +			"CBaseEntity::VPhysicsUpdate"   "_ZN11CBaseEntity14VPhysicsUpdateEP14IPhysicsObject"
    5.39 +			"CBaseEntity::VPhysicsTakeDamage"       "_ZN11CBaseEntity18VPhysicsTakeDamageERK15CTakeDamageInfo"
    5.40 +			"CBaseEntity::VPhysicsCollision"        "_ZN11CBaseEntity17VPhysicsCollisionEiP21gamevcollisionevent_t"
    5.41 +			"CBaseEntity::VPhysicsFriction" "_ZN11CBaseEntity16VPhysicsFrictionEP14IPhysicsObjectfii"
    5.42 +			"CBaseEntity::VPhysicsGetObjectList"    "_ZN11CBaseEntity21VPhysicsGetObjectListEPP14IPhysicsObjecti"
    5.43 +			"CBaseEntity::PhysicsSolidMaskForEntity"        "_ZNK11CBaseEntity25PhysicsSolidMaskForEntityEv"
    5.44 +			"CBaseAnimating::StudioFrameAdvance"    "_ZN14CBaseAnimating18StudioFrameAdvanceEv"
    5.45 +			"CBaseAnimating::GetBoneTransform"      "_ZN14CBaseAnimating16GetBoneTransformEiR11matrix3x4_t"
    5.46 +			"CBaseAnimating::SetupBones"    "_ZN14CBaseAnimating10SetupBonesEP11matrix3x4_ti"
    5.47 +			"CBaseAnimating::DispatchAnimEvents"    "_ZN14CBaseAnimating18DispatchAnimEventsEPS_"
    5.48 +			"CBaseAnimating::HandleAnimEvent"       "_ZN14CBaseAnimating15HandleAnimEventEP11animevent_t"
    5.49 +			"CBaseAnimating::GetAttachment" "_ZN14CBaseAnimating13GetAttachmentEiR11matrix3x4_t"
    5.50 +			"CBasePlayer::PlayScene"        "_ZN9CTFPlayer9PlaySceneEPKcfP11AI_ResponseP16IRecipientFilter"
    5.51 +			"CBasePlayer::GiveAmmo" "_ZN9CTFPlayer8GiveAmmoEiib"
    5.52 +			"CBasePlayer::Weapon_Equip"     "_ZN11CBasePlayer12Weapon_EquipEP17CBaseCombatWeapon"
    5.53 +			"CBasePlayer::Weapon_Switch"    "_ZN9CTFPlayer13Weapon_SwitchEP17CBaseCombatWeaponi"
    5.54 +			"CBasePlayer::RemovePlayerItem" "_ZN11CBasePlayer16RemovePlayerItemEP17CBaseCombatWeapon"
    5.55 +			"CBasePlayer::ForceRespawn"     "_ZN9CTFPlayer12ForceRespawnEv"
    5.56 +			"CBasePlayer::PreThink" "_ZN9CTFPlayer8PreThinkEv"
    5.57 +			"CBasePlayer::PostThink"        "_ZN9CTFPlayer9PostThinkEv"
    5.58 +			"CTFPlayer::EquipWearable"      "_ZN11CBasePlayer13EquipWearableEP13CEconWearable"
    5.59 +			"CTFPlayer::RemoveWearable"     "_ZN11CBasePlayer14RemoveWearableEP13CEconWearable"
    5.60 +			"CBasePlayer::PlayerRunCommand" "_ZN9CTFPlayer16PlayerRunCommandEP8CUserCmdP11IMoveHelper"
    5.61 +			"CBasePlayer::CalculateTeamBalanceScore"        "_ZN9CTFPlayer25CalculateTeamBalanceScoreEv"
    5.62 +			"CTFBaseRocket::GetWeaponID"    "_ZNK13CTFBaseRocket11GetWeaponIDEv"
    5.63 +			"CBaseCombatWeapon::ItemPostFrame"      "_ZN17CBaseCombatWeapon13ItemPostFrameEv"
    5.64 +			"CBaseCombatWeapon::Reload"     "_ZN17CBaseCombatWeapon6ReloadEv"
    5.65 +			"CBaseCombatWeapon::PrimaryAttack"      "_ZN17CBaseCombatWeapon13PrimaryAttackEv"
    5.66 +			"CBaseCombatWeapon::SecondaryAttack"    "_ZN17CBaseCombatWeapon15SecondaryAttackEv"
    5.67 +			"CBaseCombatWeapon::GetViewModel"       "_ZNK17CBaseCombatWeapon12GetViewModelEi"
    5.68 +			"CBaseCombatWeapon::GetWorldModel"      "_ZNK17CBaseCombatWeapon13GetWorldModelEv"
    5.69 +			"CBaseCombatWeapon::GetMaxClip1"        "_ZNK17CBaseCombatWeapon11GetMaxClip1Ev"
    5.70 +			"CBaseCombatWeapon::GetMaxClip2"        "_ZNK17CBaseCombatWeapon11GetMaxClip2Ev"
    5.71 +			"CBaseCombatWeapon::GetDefaultClip1"    "_ZNK17CBaseCombatWeapon15GetDefaultClip1Ev"
    5.72 +			"CBaseCombatWeapon::GetDefaultClip2"    "_ZNK17CBaseCombatWeapon15GetDefaultClip2Ev"
    5.73 +			"CBaseCombatWeapon::GetEncryptionKey"   "_ZN17CBaseCombatWeapon16GetEncryptionKeyEv"
    5.74 +			"CGameRules::CanHaveAmmo"       "_ZN10CGameRules11CanHaveAmmoEP20CBaseCombatCharacterPKc"
    5.75 +			"CGameRules::GetNextLevelName"  "_ZN15CMultiplayRules16GetNextLevelNameEPcib"
    5.76 +			"CGameRules::ChangeLevel"       "_ZN15CMultiplayRules11ChangeLevelEv"
    5.77 +			"CGameRules::GoToIntermission"  "_ZN12CTFGameRules16GoToIntermissionEv"
    5.78 +			"CGameRules::PlayerMayCapturePoint"     "_ZN12CTFGameRules21PlayerMayCapturePointEP11CBasePlayeriPci"
    5.79 +			"CTeamplayRoundBasedRules::SetWinningTeam"      "_ZN24CTeamplayRoundBasedRules14SetWinningTeamEiibbb"
    5.80 +			"CTeamplayRoundBasedRules::SetStalemate"        "_ZN24CTeamplayRoundBasedRules12SetStalemateEibb"
    5.81 +			"CTeamplayRoundBasedRules::SetScrambleTeams"    "_ZN14CTeamplayRules16SetScrambleTeamsEb"
    5.82 +			"CTeamplayRoundBasedRules::CleanUpMap"		"_ZN12CTFGameRules10CleanUpMapEv"
    5.83  		}
    5.84  		
    5.85  		"Options"
    5.86 @@ -106,6 +182,7 @@
    5.87  		"#supported"
    5.88  		{
    5.89  			"engine"	"orangebox_valve"
    5.90 +			"engine"	"css"
    5.91  			"engine"	"left4dead2"
    5.92  			"engine"	"alienswarm"
    5.93  			"engine"	"csgo"