Raised This Month: $120 Target: $400
 30% 

[CS:GO] Experimental: Zombie Plague 8.5.0


Post New Thread Reply   
 
Thread Tools Display Modes
Qes
AlliedModders Donor
Join Date: Jul 2014
Old 06-21-2018 , 06:29   Re: [CS:GO] Release: Zombie Plague 7.8fix2
Reply With Quote #401

Quote:
Originally Posted by gubka View Post
Models (weapons.ini) system was remaked fully, so everything will be work

I already finished the gamemodes addons (System like a extraitems)
But i Use new system and i have a problem with this ...


I have 3 models:
v_jump_grenade.mdl
w_jump_grenade.mdl
w_jump_grenade_dropped.mdl

And i can't add droppped grenade :/

My weapons.ini
Code:
	"Hegrenade"
	{
		// General
		"weaponentity"  "weapon_hegrenade" 
		"weaponindex"	"44"
		
		// Base
		"weaponcost"	"0"
		"weaponslot"	"5"
		"weaponlvl"     "1"
		"weapononline"	"1"
		"weapondamage"  "1.0"
		"weaponknock"   "100.0"
		
		// Model
		"weaponclass"   "zombie" 
		"weaponview"	"models/weapons/eminem/jump_grenade/v_jump_grenade.mdl"
		"weaponworld"	"models/weapons/eminem/jump_grenade/w_jump_grenade.mdl"
	}
Qes is offline
gubka
Veteran Member
Join Date: Jan 2012
Location: Dublin
Old 06-23-2018 , 22:15   Re: [CS:GO] Release: Zombie Plague 7.8fix2
Reply With Quote #402

Qes, I didnt post update 8.0 yet, grenades model should work, next update 8.0 each zombie class will have grenade with hands and with different skins

Last news about 8.0
Quote:
* Fix with death fake events.
* Fix with change team for spectators .
* Added saving of selected human and zombie classes in the sql database.
* Added free weapon menu on the spawn ADDON (Like in classic ZP 4.3)
* Fix flare grenade.
* New glass break effect for freeze and also fixed ice angle position.
* Psyh zombie class have a scream skill (Like shaman in killing floor)
* Girl zombie class have a bomb blast skill (Like deimos in cso)
* Blinder zombie class have a passive sleep skill for humans who attack him.
* NormalM01 zombie class have a smoke stack skill (Like ps in cso)
* Cvars for setting selection of zclass and hclass only for VIPs. Normal players selected class by random, like bots. You only need to block access into menu in <menus.ini>
* Range zombie class have a infect explosion after death.
* Fix with teamscores.
* Possibility to set the zombie grenade model (v_ ) in the class addon.
* Ammo setting for the standart weapons. (clip, reserve)
* Supporting of mp3 and wav files precaching to client in the downloads.ini.
* Zombie infect grenade and unique models for each class (grenades with unique hands)
* Tagrenade was removed and remaked to infection grenade.
* Grenades for human rewrited.
* Some cvars removed.
* Update of some natives and improvements of forwards in zombieplague.inc
* Weapon module optimisation and improvement. It was rewritten, and have more optimions to customize weapons, Cstrike module there was removed. + Other changes.
* Damage module was rewritten, improvements in the forward.
* Damage multipliers / Knockback multipliers was fixed.
* Fix with the world models for zombies, not they have correct invisibility.
* Minor changes in precache system.
* Amunnition addons was replaced by standart cvars/and new cvars for all classes for default weapons. More flexible system.
* Added trimming to the string cvars, to avoid user mistakes.
* Energy splash effect was removed, it was very bad.
* Added sound level cvar. For all mod and addons.
* Fix with zombie attack sounds, and fix of zombie claws sounds in the client side in the claw view model.
* Added customisation of weapon speed in weapons.ini
* Damage box was trasfered into the mod.
* Added possibility of changing color for hint messages using html blocks.
* Database was trasfered to engine of mod, to make the nice logging and aded savings on restart/disabling server.
* Added more logs info on the start of server for zombie/human classes and weapons.
* Fix some logs info/errors more clear.
* Fix view model animations hooks.
* Reupdating ammo on spawn fix.
* Menus for modules was transform to mod, fixed problems. Improve the weapon system menu titles.
* Additional features ofsound system. More sounds for classes.
(may be in future i will add sounds for each class, just send me a lot of sounds for each class and i will do that)
* Voice system from zr. +my improvements
* Fix of repeated timers.
* Weapon ammo fix for reloading if you have less ammos than standart weapon.
* Rebuy slot for rebuying the weapons which you bought last round in special menu on spawn, that variable is store in Sqlite/MySQL table
* Strings validation oprimisations.
* Fix translation for other languages.
* Changed all handles to the methodmap methods.
* Gamemodes transform to seperate addons, in the way of classes and extraitems.
* A lot of cvars connected to gammodes was removed.
* A lot of natvies to manage gamemodes outside the core was added.
* Admin menu was updated to new gamemode system.
* Classes of zombies/humans can have unique sounds by adding new customisations for natives.
* New API for sound system, which you can use in other plugins and play block from sounds.ini.
* Respawn for classes was fixed.
* Glowing now is removing on death. (Bugfix)
* CUSTOM PCF (PARTICLE) SYSTEM integrate + 87 effects look downloads.ini) Which use can use in other plugins is well, ZP will registate it for you
* New effect system using custom particles.
* USP fix.
* Remove some old effects fully.
* Optimization of randomising.
* Healthshot effect.
* New flare. Which is limited for use.
* Now ammopacks HUD not update in runcmd.
* Fix of lag on custom model (Precache bug)
* New view model core, fixed a lot of problems with animations.
* Methodmaps removed, optimized of PROPS offsets. (They getting on start which will reduce the overload CPU in some situaltions)
* KnockBack fix
* Remove All use virual SDK call now
* Custom effects can be fully disabled, if you dont have a powerful server.
* Skins/Body possibility to change in weapons.ini, Zombie grenades will use them.
__________________

Last edited by gubka; 06-23-2018 at 22:15.
gubka is offline
Send a message via ICQ to gubka Send a message via Skype™ to gubka
Qes
AlliedModders Donor
Join Date: Jul 2014
Old 06-24-2018 , 06:12   Re: [CS:GO] Release: Zombie Plague 7.8fix2
Reply With Quote #403

Will you add information on what code you were editing on github?
I have edited code in this engine and I would like to know what exactly to update in the code instead of doing what I did from "scratch"
Qes is offline
gubka
Veteran Member
Join Date: Jan 2012
Location: Dublin
Old 06-24-2018 , 14:24   Re: [CS:GO] Release: Zombie Plague 7.8fix2
Reply With Quote #404

Quote:
Originally Posted by Qes View Post
Will you add information on what code you were editing on github?
I have edited code in this engine and I would like to know what exactly to update in the code instead of doing what I did from "scratch"
I don't have time to do that in github, shortly I rewrote core fully , and just will update github repository fully. Because the changes are significant just to compare to small update, better to rename the modification, if you want to compare code changes you can use notepad++ plugins
__________________

Last edited by gubka; 06-24-2018 at 14:29.
gubka is offline
Send a message via ICQ to gubka Send a message via Skype™ to gubka
xkonsole
Member
Join Date: Mar 2018
Old 06-25-2018 , 07:58   Re: [CS:GO] Release: Zombie Plague 7.8fix2
Reply With Quote #405

Hello. Just installed your mod, and it's great, but produces lots of
Spoiler

for some reason.
Ah yes, also custom sounds from zp(countdown, infection, round start, etc..) don't work.
I'm new to csgo, so not sure how do I fix it. Any suggestions?

P.S.
I also googled for same issue and found one solution on russian srcds forums, which works by adding this
Spoiler

to the plugin and recompile it. But shouldn't there be another way, without recompiling the whole mod?
xkonsole is offline
gubka
Veteran Member
Join Date: Jan 2012
Location: Dublin
Old 06-25-2018 , 08:15   Re: [CS:GO] Release: Zombie Plague 7.8fix2
Reply With Quote #406

Quote:
Originally Posted by xkonsole View Post
Hello. Just installed your mod, and it's great, but produces lots of
Spoiler

for some reason.
Ah yes, also custom sounds from zp(countdown, infection, round start, etc..) don't work.
I'm new to csgo, so not sure how do I fix it. Any suggestions?

P.S.
I also googled for same issue and found one solution on russian srcds forums, which works by adding this
Spoiler

to the plugin and recompile it. But shouldn't there be another way, without recompiling the whole mod?
In new update i change precache for all modules, but i didnt had problem on my linux server on the hosting, probably your server initialize during more than 8 seconds and sourcemod couldn't precache all staff during OnMapStart(), my main suggestion is to wait new update
__________________
gubka is offline
Send a message via ICQ to gubka Send a message via Skype™ to gubka
xkonsole
Member
Join Date: Mar 2018
Old 06-25-2018 , 08:24   Re: [CS:GO] Release: Zombie Plague 7.8fix2
Reply With Quote #407

[email protected]:/zombieplague/csgo/sound# mv sound.cache sound.cache.bkp
then changed level on server and it mysteriously works now. Thanks for a quick reply tho!

UPD:
moving sound.cache away isn't what "solved" the issue. Map change after srcds start actually does. I guess I'll add "sm_map *something*" to my startup script as temporary workaround.

Last edited by xkonsole; 06-25-2018 at 08:37.
xkonsole is offline
gubka
Veteran Member
Join Date: Jan 2012
Location: Dublin
Old 06-25-2018 , 08:33   Re: [CS:GO] Release: Zombie Plague 7.8fix2
Reply With Quote #408

Quote:
Originally Posted by xkonsole View Post
[email protected]:/zombieplague/csgo/sound# mv sound.cache sound.cache.bkp
then changed level on server and it mysteriously works now. Thanks for a quick reply tho!
you should have sounds in the folder of 'sounds' in cs:go, another problems which i am fixed yeaterday that f you have empty block in the sounds.ini, you can have problems which generation custom sound path, but it already fixed, so update is nearly finished, i just need to finish zombies grenades effects and 4 zombie class,and i still wait fixed models pack, so hope on the weekend i will be ready to release the beta update, because it will unstable, because mod will work with offsets/virtual functions from the config and people will need to know how update them, because valve can change offsets every update.
One example of new view model module
PHP Code:
/**
 * Variables to store SDK calls handlers.
 **/
Handle hSDKCallEntityUpdateTransmitState// UpdateTransmitState will stop the view model from transmitting if EF_NODRAW flag is present
Handle hSDKCallAnimatingGetSequenceActivity;

/**
 * Variables to store virtual SDK adresses.
 **/
int Animating_StudioHdr;
int StudioHdrStruct_SequenceCount;
int VirtualModelStruct_SequenceVector_Size;
 
/**
 * StudioHdr structure.
 * https://github.com/ValveSoftware/source-sdk-2013/blob/0d8dceea4310fde5706b3ce1c70609d72a38efdf/mp/src/public/studio.h#L2371
 **/ 
enum StudioHdrClass
{
    
StudioHdrClass_StudioHdrStruct 0,
    
StudioHdrClass_VirualModelStruct 4
}

/**
 * StudioHdr structure.
 * https://github.com/ValveSoftware/source-sdk-2013/blob/0d8dceea4310fde5706b3ce1c70609d72a38efdf/mp/src/public/studio.h#L690
 **/ 
enum StudioAnimDesc
{
    
StudioAnimDesc_Fps 8,
    
StudioAnimDesc_NumFrames 16,
    
StudioAnimDesc_NumMovements 20,
}
 
/**
 * Initialize the main virtual offsets for the weapon HDR system.
 **/
void WeaponHDRInit(/*void*/)
{
    
// Loads a game config file
    
Handle hConfig LoadGameConfigFile(PLUGIN_CONFIG);

    
// Validate it
    
if(hConfig != INVALID_HANDLE)
    {
        
// Starts the preparation of an SDK call
        
StartPrepSDKCall(SDKCall_Entity);
        
PrepSDKCall_SetFromConf(hConfigSDKConf_Virtual"Entity_UpdateTransmitState");

        
//  Validate call
        
if(!(hSDKCallEntityUpdateTransmitState EndPrepSDKCall()))
        {
            
// Log failure
            
LogEvent(falseLogType_FatalLOG_CORE_EVENTSLogModule_Weapons"Config Validation""Failed to load SDK call \"UpdateTransmitState\". Update offsets in \"%s\""PLUGIN_CONFIG);
        }

        
// Starts the preparation of an SDK call
        
StartPrepSDKCall(SDKCall_Entity);
        
PrepSDKCall_SetFromConf(hConfigSDKConf_Signature"Animating_GetSequenceActivity");

        
// Adds a parameter to the calling convention. This should be called in normal ascending order
        
PrepSDKCall_AddParameter(SDKType_PlainOldDataSDKPass_Plain);
        
PrepSDKCall_SetReturnInfo(SDKType_PlainOldDataSDKPass_Plain);

        
//  Validate call
        
if(!(hSDKCallAnimatingGetSequenceActivity EndPrepSDKCall()))
        {
            
// Log failure
            
LogEvent(falseLogType_FatalLOG_CORE_EVENTSLogModule_Weapons"Config Validation""Failed to load SDK call \"Animating_GetSequenceActivity\". Update offsets in \"%s\""PLUGIN_CONFIG);
        }

        
// Load other offsets
        
fnInitGameConfOffset(hConfigAnimating_StudioHdr"Animating_StudioHdr");
        
fnInitGameConfOffset(hConfigStudioHdrStruct_SequenceCount"StudioHdrStruct_SequenceCount");
        
fnInitGameConfOffset(hConfigVirtualModelStruct_SequenceVector_Size"VirtualModelStruct_SequenceVector_Size");

        
// Close it
        
delete hConfig;
    }
    else
    {
        
// Log failure
        
LogEvent(falseLogType_FatalLOG_CORE_EVENTSLogModule_Weapons"Config Validation""Missing weapons config file: \"plugin.zombieplague\"");
    }

    
int lightingOriginOffset;
    
fnInitSendPropOffset(lightingOriginOffset"CBaseAnimating""m_hLightingOrigin");
    
    
// StudioHdr offset in gameconf is only relative to the offset of m_hLightingOrigin, in order to make the offset more resilient to game updates
    
Animating_StudioHdr += lightingOriginOffset;
}

........................................

/**
 * This function simulates the equivalent function in the SDK.
 *
 * The game has two methods for getting the sequence count:
 * 
 * 1. Local sequence count if the model has sequences built in the model itself.
 * 2. Virtual model sequence count if the model inherits the sequences from a different model, also known as an include model.
 *
 * @param iAnimating                .
 * @return 
 **/
stock int Animating_GetSequenceCount(int iAnimating)
{
    
// Load some bytes from a memory address
    
Address studioHdrClass view_as<Address>(GetEntData(iAnimatingAnimating_StudioHdr));
    
    
// Validate adress
    
if(studioHdrClass == Address_Null)
    {
        return -
1;
    }
    
    
// Load some bytes from a memory address
    
Address studioHdrStruct view_as<Address>(LoadFromAddress(studioHdrClass view_as<Address>(StudioHdrClass_StudioHdrStruct), NumberType_Int32));
    
    
// Validate adress
    
if(studioHdrStruct != Address_Null)
    {
        
int localSequenceCount LoadFromAddress(studioHdrStruct view_as<Address>(StudioHdrStruct_SequenceCount), NumberType_Int32);
        
        if(
localSequenceCount != 0)
        {
            return 
localSequenceCount;
        }
    }
    
    
// Load some bytes from a memory address
    
Address virtualModelStruct view_as<Address>(LoadFromAddress(studioHdrClass view_as<Address>(StudioHdrClass_VirualModelStruct), NumberType_Int32));
    
    
// Validate adress
    
if(virtualModelStruct != Address_Null)
    {
        return 
LoadFromAddress(virtualModelStruct view_as<Address>(VirtualModelStruct_SequenceVector_Size), NumberType_Int32);
    }
    
    
// Return on unsuccess 
    
return -1;
}

/**
 * Calls an SDK sequence activity function with the given parameters.
 *
 * If the call type is Entity or Player, the index MUST ALWAYS be the FIRST parameter passed. 
 * If the call type is GameRules, then nothing special needs to be passed. 
 * If the return value is a Vector or QAngles, the SECOND parameter must be a Float[3]. 
 * If the return value is a string, the THIRD parameter must be a String buffer, and the FOURTH parameter must be the maximum length. 
 * All parameters must be passed after the above is followed. Failure to follow these rules will result in crashes or wildly unexpected behavior!
 *
 * If the return value is a float or integer, the return value will be this value. 
 * If the return value is a CBaseEntity, CBasePlayer, or edict, the return value will always be the entity index, or -1 for NULL..
 *
 * This function is far to advanced to be cloned.
 *
 * @param iAnimating            The animation index.
 * @param nSequence             The sequence index.
 * @return                      The activity index.
 **/
stock int Animating_GetSequenceActivity(int iAnimatingint nSequence)
{
    return 
SDKCall(hSDKCallAnimatingGetSequenceActivityiAnimatingnSequence);

That is new precache function, which should remove lags on custom models
PHP Code:
/**
 * Precache file and add it to the download table.
 *
 * @param sPath             The path to file.
 * @return                  True or false.
 **/
stock bool fnMultiFilePrecache(const char[] sPath)
{
    
// Finds the first occurrence of a character in a string
    
int iDelimiter FindCharInString(sPath'@'true); //! Fix for particles
    
    // If file doesn't exist, then log, and stop
    
if(!FileExists(sPath) && iDelimiter == -1
    {
        
LogEvent(falseLogType_ErrorLOG_CORE_EVENTSLogModule_Engine"Config Validation""Missing file: %s"sPath);
        return 
false;
    }
    
    
// Finds the first occurrence of a character in a string
    
int iFormat FindCharInString(sPath'.'true);
    
    
// If model's path is don't have format, then log, and stop
    
if(iFormat == -1)
    {
        
LogEvent(falseLogType_ErrorLOG_CORE_EVENTSLogModule_Engine"Config Validation""Missing file format: %s"sPath);
        return 
false;
    }
    
    
// Add to precache if path contains '.mdl'
    
if(!strcmp(sPath[iFormat], ".mdl"false))
    {
        
// If model doesn't precache yet, then continue
        
if(!IsModelPrecached(sPath))
        {
            
// Add file to download table
            
AddFileToDownloadsTable(sPath);
            
            
// Precache file
            
PrecacheModel(sPathtrue);
        }
    }
    
// Add to precache if path contains '.mp3' or '.wav'
    
else if(!strcmp(sPath[iFormat], ".mp3"false) || !strcmp(sPath[iFormat], ".wav"false))
    {
        
// Copy one string onto another
        
static char sSound[PLATFORM_MAX_PATH];
        
strcopy(sSoundsizeof(sSound), sPath);

        
/// Look here: https://wiki.alliedmods.net/Csgo_quirks#Fake_precaching_and_EmitSound
        
if(ReplaceStringEx(sSoundsizeof(sSound), "sound""*"51true) != -1)
        {
            
// If sound doesn't precache yet, then continue
            
if(fnGetTableItemIndex("soundprecache"sSound) == INVALID_STRING_INDEX)
            {
                
// Add file to download table
                
AddFileToDownloadsTable(sPath);

                
// Precache sound
                ///bool bSave = LockStringTables(false);
                
AddToStringTable(fnGetTableIndex("soundprecache"), sSound);
                
///LockStringTables(bSave);
            
}
        }
        else
        {
            
LogEvent(falseLogType_ErrorLOG_CORE_EVENTSLogModule_Engine"Config Validation""Wrong sound path: %s"sPath);
            return 
false;
        }
    }
    
// Add to precache if path contains '.pcf'
    
else if(!strncmp(sPath[iFormat], ".pcf"4false))
    {
        
// Cut out name at the end of a line
        
static char sParticle[NORMAL_LINE_LENGTH];
        if(
SplitString(sPath"@"sParticlesizeof(sParticle)) != -1)
        {
            
// Add file to download table
            
AddFileToDownloadsTable(sParticle);
            
            
// Precache generic
            
PrecacheGeneric(sParticletrue); //! Precache only here

            // If particle doesn't precache yet, then continue
            ///if(fnGetTableItemIndex("ParticleEffectNames", sPath[iDelimiter+1]) == INVALID_STRING_INDEX) => NOT WORK!!! WTF???

            // Precache particle
            
bool bSave LockStringTables(false);
            
AddToStringTable(fnGetTableIndex("ParticleEffectNames"), sPath[iDelimiter+1]);
            
LockStringTables(bSave);
        }
        else
        {
            
LogEvent(falseLogType_ErrorLOG_CORE_EVENTSLogModule_Engine"Config Validation""Wrong particle path: %s"sPath);
            return 
false;
        }
    }
    
// Add to precache if path contains '.vtf'
    
else if(!strcmp(sPath[iFormat], ".vtf"false))
    {
        
// If decal doesn't precache yet, then continue
        
if(!IsDecalPrecached(sPath))
        {
            
// Add file to download table
            
AddFileToDownloadsTable(sPath);
            
            
// Precache file
            
PrecacheDecal(sPathtrue);
        }
    }
    else
    {
        
// Add file to download table
        
AddFileToDownloadsTable(sPath);
    }
    
    
// Return on success
    
return true;

__________________

Last edited by gubka; 06-25-2018 at 08:39.
gubka is offline
Send a message via ICQ to gubka Send a message via Skype™ to gubka
gubka
Veteran Member
Join Date: Jan 2012
Location: Dublin
Old 06-25-2018 , 22:24   Re: [CS:GO] Release: Zombie Plague 7.8fix2
Reply With Quote #409

New features during today work
Quote:
* Glowing fully removed (Flare is exception)
* FOV was removed, because of the reason of not proper working with custom models.
* Tabs in code changed by spaces.
* Fixed damage ratio for level system.
* Paramparser fixed for empty strings in sounds
* Block standart round end sounds and add custom ones.
* New sound for flare, freeze
* New block cvars for ff
* Reload validation optimized
* Round end sounds added. + Block standart rounds end sounds.
* Added support of mp_round_restart_delay to custom round ends, to add your length for round end music
* More effect for grenades (infect, freeze, jump) / more sounds + hit sounds (Standart sounds is blocked now)
* Weapons withoout access will be grop on spawn.
* Tagrenade glow (red) was removed.
* Jump bomb have a shake effect + water exp sound.
__________________

Last edited by gubka; 06-25-2018 at 22:25.
gubka is offline
Send a message via ICQ to gubka Send a message via Skype™ to gubka
xkonsole
Member
Join Date: Mar 2018
Old 06-26-2018 , 02:35   Re: [CS:GO] Release: Zombie Plague 7.8fix2
Reply With Quote #410

Sounds excellent. Good to know, that there are some zombie-related mods that are still supported. Cheers
xkonsole is offline
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 15:02.


Powered by vBulletin®
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Theme made by Freecode