You are not logged in.

Random778

Trainee

  • "Random778" started this thread

Posts: 127

Occupation: Schüler

wcf.user.option.userOption53: Nein

  • Send private message

1

Friday, June 28th 2013, 1:53pm

Sourcemod 1.4.7 Probleme...

Na endlich ein deutsches Forum das auch Sourcemod unterstützt!
erstmal Hallo,
Ich habe ein kleines Problem, und zwar funktioniert das erschlagen und Sdkhooks in Sourcemod 1.4.7 nicht!
Ich besitze dich aktuelle Version von SDKHOOKS 2.2, mit Sourcemod 1.5.0 klappt alles wunderbar doch mein Server stürzt mit 1.5.0 ab wenn etwas explodiert.
Wenn ich per Admin Menü jemand erschlage steht dort "xxx wurde erschlagen." ich weiß das es an Gamedata liegt mehr aber auch leider nicht.


Tut mir leid für mein Deutsch, ich komme aus England doch lebe nun in Deutschland seid 9 Monate.(Hoffe ihr versteht mich!) :right:

This post has been edited 1 times, last edit by "Random778" (Jun 28th 2013, 2:08pm)


General

Super Moderator

Posts: 1,043

Location: Mönchengladbach

Occupation: Brückenkranführer / Staplerfahrer

wcf.user.option.userOption53: Nein

  • Send private message

2

Friday, June 28th 2013, 1:59pm

Also ich habe mit Sourcemod 1.5.0-hg3842.tar.gz keinerlei Probleme, auch wenn ich jemanden erschlage oder sonst was, alles geht ohne Probleme.

p.S.

SDKHOOKS ist bei der Version 1.5 schon mit drin, das braucht man nicht mehr nach installieren.

Random778

Trainee

  • "Random778" started this thread

Posts: 127

Occupation: Schüler

wcf.user.option.userOption53: Nein

  • Send private message

3

Friday, June 28th 2013, 2:04pm

Ja, bei mir funktioniert dort auch alles doch es lässt bei mir den Server abschmieren wenn etwas großes Explodiert.

General

Super Moderator

Posts: 1,043

Location: Mönchengladbach

Occupation: Brückenkranführer / Staplerfahrer

wcf.user.option.userOption53: Nein

  • Send private message

4

Friday, June 28th 2013, 2:09pm

error.log ? wenn ja hier mal rein schreiben

Newbie'

Professional

Posts: 580

Location: Zuhause

wcf.user.option.userOption53: Nein

  • Send private message

5

Friday, June 28th 2013, 2:09pm

Lade dir hier den neusten stable snapshots dort ist sdkhooks schon mit dabei. Dann sollte alles ohne Probleme gehen

Upgrading SourceMod? Schau mal hier

Random778

Trainee

  • "Random778" started this thread

Posts: 127

Occupation: Schüler

wcf.user.option.userOption53: Nein

  • Send private message

6

Friday, June 28th 2013, 2:10pm

Nein, es gibt leider keine Error.log...

General

Super Moderator

Posts: 1,043

Location: Mönchengladbach

Occupation: Brückenkranführer / Staplerfahrer

wcf.user.option.userOption53: Nein

  • Send private message

7

Friday, June 28th 2013, 2:13pm

Schmeiß sourcemod noch mal ganz runter und mach es neu mit dieser Version Sourcemod 1.5.0-hg3842 und sdkhooks nicht drauf packen das ist schon mit drin.

Random778

Trainee

  • "Random778" started this thread

Posts: 127

Occupation: Schüler

wcf.user.option.userOption53: Nein

  • Send private message

8

Friday, June 28th 2013, 2:14pm

Habe ich schon mehrmals gemacht, doch hat leider nichts gebracht.
Edit:
Ich versuche es mal mit der neue Metamod Version. Gebe gleich bescheid.

Edit2:
Hilft nicht :(

Edit3:
mg_YOLO_multigames_v1
mg_scary_course_2012_v4
z.b bei denen stürzt der Server ab natürlich gibt es mehrere von denen ich nicht weiß.
Bei Scary der Spawn da..

This post has been edited 2 times, last edit by "fluxX" (Jun 28th 2013, 2:47pm)


General

Super Moderator

Posts: 1,043

Location: Mönchengladbach

Occupation: Brückenkranführer / Staplerfahrer

wcf.user.option.userOption53: Nein

  • Send private message

9

Friday, June 28th 2013, 2:54pm

du bist aber nicht der einzige der das hat laut Kommentare der Leute ^^ lass die maps mal weg.

Random778

Trainee

  • "Random778" started this thread

Posts: 127

Occupation: Schüler

wcf.user.option.userOption53: Nein

  • Send private message

10

Friday, June 28th 2013, 3:13pm

Doch das sind nicht nur die einzigen Maps!
mg_saw_rfix_v3 oder so auch.

Newbie'

Professional

Posts: 580

Location: Zuhause

wcf.user.option.userOption53: Nein

  • Send private message

11

Friday, June 28th 2013, 4:50pm

Sollte SM noch immer nicht gehen, adde mich in Steam könnte dir bei der installation helfen!

Random778

Trainee

  • "Random778" started this thread

Posts: 127

Occupation: Schüler

wcf.user.option.userOption53: Nein

  • Send private message

12

Friday, June 28th 2013, 5:15pm

Ich weiß wie man Sourcemod installiert, doch hab dich trotzdem geaddet.

Random778

Trainee

  • "Random778" started this thread

Posts: 127

Occupation: Schüler

wcf.user.option.userOption53: Nein

  • Send private message

13

Friday, June 28th 2013, 11:33pm

Problem gefunden!!
War das Trails Plugin vom Store... :(
Könnte jemand das fixen bitte!!! :(
Das lässt den Server abstürzen wenn große Explosionen kommen.

Spoiler Spoiler


#pragma semicolon 1

#include <sourcemod>
#include <sdktools>
#include <sdkhooks>
#include <store>
#include <smjansson>

#undef REQUIRE_PLUGIN
#include <zombiereloaded>

enum Trail
{
String:TrailName[STORE_MAX_NAME_LENGTH],
String:TrailMaterial[PLATFORM_MAX_PATH],
Float:TrailLifetime,
Float:TrailWidth,
Float:TrailEndWidth,
TrailFadeLength,
TrailColor[4],
TrailModelIndex
}

new g_trails[1024][Trail];
new g_trailCount;
new bool:g_zombieReloaded;

new String:g_game[32];

new Handle:g_trailsNameIndex = INVALID_HANDLE;
new Handle:g_trailTimers[MAXPLAYERS+1];
new g_SpriteModel[MAXPLAYERS + 1];

/**
* Called before plugin is loaded.
*
* @param myself The plugin handle.
* @param late True if the plugin was loaded after map change, false on map start.
* @param error Error message if load failed.
* @param err_max Max length of the error message.
*
* @return APLRes_Success for load success, APLRes_Failure or APLRes_SilentFailure otherwise.
*/
public APLRes:AskPluginLoad2(Handle:myself, bool:late, String:error[], err_max)
{
MarkNativeAsOptional("ZR_IsClientHuman");
MarkNativeAsOptional("ZR_IsClientZombie");

return APLRes_Success;
}

public Plugin:myinfo =
{
name = "[Store] Trails",
author = "alongub",
description = "Trails component for [Store]",
version = "1.1-alpha",
url = "https://github.com/alongubkin/store"
};

/**
* Plugin is loading.
*/
public OnPluginStart()
{
LoadTranslations("common.phrases");
LoadTranslations("store.phrases");

g_zombieReloaded = LibraryExists("zombiereloaded");

HookEvent("player_spawn", PlayerSpawn);
HookEvent("player_death", PlayerDeath);
HookEvent("player_team", PlayerTeam);
HookEvent("round_end", RoundEnd);

GetGameFolderName(g_game, sizeof(g_game));

Store_RegisterItemType("trails", OnEquip, LoadItem);
}

/**
* Called when a new API library is loaded.
*/
public OnLibraryAdded(const String:name[])
{
if (StrEqual(name, "zombiereloaded"))
{
g_zombieReloaded = true;
}
else if (StrEqual(name, "store-inventory"))
{
Store_RegisterItemType("trails", OnEquip, LoadItem);
}
}

/**
* Called when an API library is removed.
*/
public OnLibraryRemoved(const String:name[])
{
if (StrEqual(name, "zombiereloaded"))
{
g_zombieReloaded = false;
}
}

/**
* Map is starting
*/
public OnMapStart()
{
for (new client = 1; client <= MaxClients; client++)
{
g_SpriteModel[client] = -1;
}

for (new item = 0; item < g_trailCount; item++)
{
if (strcmp(g_trails[item][TrailMaterial], "") != 0 && (FileExists(g_trails[item][TrailMaterial]) || FileExists(g_trails[item][TrailMaterial], true)))
{
decl String:_sBuffer[PLATFORM_MAX_PATH];
strcopy(_sBuffer, sizeof(_sBuffer), g_trails[item][TrailMaterial]);
g_trails[item][TrailModelIndex] = PrecacheModel(_sBuffer);
AddFileToDownloadsTable(_sBuffer);
ReplaceString(_sBuffer, sizeof(_sBuffer), ".vmt", ".vtf", false);
AddFileToDownloadsTable(_sBuffer);
}
}
}

/**
* The map is ending.
*/
public OnMapEnd()
{
for (new client = 1; client <= MaxClients; client++)
{
if (g_trailTimers[client] != INVALID_HANDLE)
{
CloseHandle(g_trailTimers[client]);
g_trailTimers[client] = INVALID_HANDLE;
}

g_SpriteModel[client] = -1;
}
}

public Store_OnReloadItems()
{
if (g_trailsNameIndex != INVALID_HANDLE)
CloseHandle(g_trailsNameIndex);

g_trailsNameIndex = CreateTrie();
g_trailCount = 0;
}

public LoadItem(const String:itemName[], const String:attrs[])
{
strcopy(g_trails[g_trailCount][TrailName], STORE_MAX_NAME_LENGTH, itemName);

SetTrieValue(g_trailsNameIndex, g_trails[g_trailCount][TrailName], g_trailCount);

new Handle:json = json_load(attrs);
json_object_get_string(json, "material", g_trails[g_trailCount][TrailMaterial], PLATFORM_MAX_PATH);

g_trails[g_trailCount][TrailLifetime] = json_object_get_float(json, "lifetime")
;
if (g_trails[g_trailCount][TrailLifetime] == 0.0)
g_trails[g_trailCount][TrailLifetime] = 1.0;

g_trails[g_trailCount][TrailWidth] = json_object_get_float(json, "width");

if (g_trails[g_trailCount][TrailWidth] == 0.0)
g_trails[g_trailCount][TrailWidth] = 15.0;

g_trails[g_trailCount][TrailEndWidth] = json_object_get_float(json, "endwidth");

if (g_trails[g_trailCount][TrailEndWidth] == 0.0)
g_trails[g_trailCount][TrailEndWidth] = 6.0;

g_trails[g_trailCount][TrailFadeLength] = json_object_get_int(json, "fadelength");

if (g_trails[g_trailCount][TrailFadeLength] == 0)
g_trails[g_trailCount][TrailFadeLength] = 1;

new Handle:color = json_object_get(json, "color");

if (color == INVALID_HANDLE)
{
g_trails[g_trailCount][TrailColor] = { 255, 255, 255, 255 };
}
else
{
for (new i = 0; i < 4; i++)
g_trails[g_trailCount][TrailColor] = json_array_get_int(color, i);

CloseHandle(color);
}

CloseHandle(json);

if (strcmp(g_trails[g_trailCount][TrailMaterial], "") != 0 && (FileExists(g_trails[g_trailCount][TrailMaterial]) || FileExists(g_trails[g_trailCount][TrailMaterial], true)))
{
decl String:_sBuffer[PLATFORM_MAX_PATH];
strcopy(_sBuffer, sizeof(_sBuffer), g_trails[g_trailCount][TrailMaterial]);
g_trails[g_trailCount][TrailModelIndex] = PrecacheModel(_sBuffer);
AddFileToDownloadsTable(_sBuffer);
ReplaceString(_sBuffer, sizeof(_sBuffer), ".vmt", ".vtf", false);
AddFileToDownloadsTable(_sBuffer);
}

g_trailCount++;
}

public Store_ItemUseAction:OnEquip(client, itemId, bool:equipped)
{
if (!IsClientInGame(client))
{
return Store_DoNothing;
}

if (!IsPlayerAlive(client))
{
PrintToChat(client, "%s%t", STORE_PREFIX, "Equipped item apply next spawn");
return Store_EquipItem;
}

if (g_zombieReloaded && !ZR_IsClientHuman(client))
{
PrintToChat(client, "%s%t", STORE_PREFIX, "Equipped item apply next spawn");
return Store_EquipItem;
}

decl String:name[STORE_MAX_NAME_LENGTH];
Store_GetItemName(itemId, name, sizeof(name));

decl String:loadoutSlot[STORE_MAX_LOADOUTSLOT_LENGTH];
Store_GetItemLoadoutSlot(itemId, loadoutSlot, sizeof(loadoutSlot));

KillTrail(client);

if (equipped)
{
decl String:displayName[STORE_MAX_DISPLAY_NAME_LENGTH];
Store_GetItemDisplayName(itemId, displayName, sizeof(displayName));

PrintToChat(client, "%s%t", STORE_PREFIX, "Unequipped item", displayName);

return Store_UnequipItem;
}
else
{
if (!Equip(client, name))
return Store_DoNothing;

decl String:displayName[STORE_MAX_DISPLAY_NAME_LENGTH];
Store_GetItemDisplayName(itemId, displayName, sizeof(displayName));

PrintToChat(client, "%s%t", STORE_PREFIX, "Equipped item", displayName);

return Store_EquipItem;
}
}

public OnClientDisconnect(client)
{
if (g_trailTimers[client] != INVALID_HANDLE)
{
CloseHandle(g_trailTimers[client]);
g_trailTimers[client] = INVALID_HANDLE;
}

g_SpriteModel[client] = -1;
}

public Action:PlayerSpawn(Handle:event,const String:name[],bool:dontBroadcast)
{
new client = GetClientOfUserId(GetEventInt(event, "userid"));

if (IsClientInGame(client) && IsPlayerAlive(client))
{
if (g_trailTimers[client] != INVALID_HANDLE)
{
CloseHandle(g_trailTimers[client]);
g_trailTimers[client] = INVALID_HANDLE;
}

g_SpriteModel[client] = -1;

CreateTimer(1.0, GiveTrail, GetClientSerial(client));
}
}

public PlayerTeam(Handle:Spawn_Event, const String:Death_Name[], bool:Death_Broadcast )
{
new client = GetClientOfUserId(GetEventInt(Spawn_Event,"userid") );
new team = GetEventInt(Spawn_Event, "team");

if (team == 1)
{
KillTrail(client);
}
}

public Action:PlayerDeath(Handle:event,const String:name[],bool:dontBroadcast)
{
new client = GetClientOfUserId(GetEventInt(event, "userid"));
KillTrail(client);
}

public Action:RoundEnd(Handle:event,const String:name[],bool:dontBroadcast)
{
for (new client = 1; client <= MaxClients; client++)
{
if (g_trailTimers[client] != INVALID_HANDLE)
{
CloseHandle(g_trailTimers[client]);
g_trailTimers[client] = INVALID_HANDLE;
}

g_SpriteModel[client] = -1;
}
}

public Action:GiveTrail(Handle:timer, any:serial)
{
new client = GetClientFromSerial(serial);
if (client == 0)
return Plugin_Handled;

if (!IsPlayerAlive(client))
return Plugin_Continue;

if (g_zombieReloaded && !ZR_IsClientHuman(client))
return Plugin_Continue;

Store_GetEquippedItemsByType(Store_GetClientAccountID(client), "trails", Store_GetClientLoadout(client), OnGetPlayerTrail, GetClientSerial(client));
return Plugin_Handled;
}

public Store_OnClientLoadoutChanged(client)
{
Store_GetEquippedItemsByType(Store_GetClientAccountID(client), "trails", Store_GetClientLoadout(client), OnGetPlayerTrail, GetClientSerial(client));
}

public OnGetPlayerTrail(ids[], count, any:serial)
{
new client = GetClientFromSerial(serial);

if (client == 0)
return;

if (g_zombieReloaded && !ZR_IsClientHuman(client))
return;

KillTrail(client);

for (new index = 0; index < count; index++)
{
decl String:itemName[32];
Store_GetItemName(ids[index], itemName, sizeof(itemName));

Equip(client, itemName);
}
}

bool:Equip(client, const String:name[])
{
KillTrail(client);

new trail = -1;
if (!GetTrieValue(g_trailsNameIndex, name, trail))
{
PrintToChat(client, "%s%t", STORE_PREFIX, "No item attributes");
return false;
}

if (StrEqual(g_game, "csgo"))
{
EquipTrailTempEnts(client, trail);

new Handle:pack;
g_trailTimers[client] = CreateDataTimer(0.1, Timer_RenderBeam, pack, TIMER_REPEAT);

WritePackCell(pack, GetClientSerial(client));
WritePackCell(pack, trail);

return true;
}
else
{
return EquipTrail(client, trail);
}
}

bool:EquipTrailTempEnts(client, trail)
{
new entityToFollow = GetPlayerWeaponSlot(client, 2);
if (entityToFollow == -1)
entityToFollow = client;

new color[4];
Array_Copy(g_trails[client][TrailColor], color, sizeof(color));

TE_SetupBeamFollow(entityToFollow,
g_trails[trail][TrailModelIndex],
0,
g_trails[trail][TrailLifetime],
g_trails[trail][TrailWidth],
g_trails[trail][TrailEndWidth],
g_trails[trail][TrailFadeLength],
color);
TE_SendToAll();

return true;
}

bool:EquipTrail(client, trail)
{
g_SpriteModel[client] = CreateEntityByName("env_spritetrail");

if (!IsValidEntity(g_SpriteModel[client]))
return false;

new String:strTargetName[MAX_NAME_LENGTH];
GetClientName(client, strTargetName, sizeof(strTargetName));

DispatchKeyValue(client, "targetname", strTargetName);
DispatchKeyValue(g_SpriteModel[client], "parentname", strTargetName);
DispatchKeyValueFloat(g_SpriteModel[client], "lifetime", g_trails[trail][TrailLifetime]);
DispatchKeyValueFloat(g_SpriteModel[client], "endwidth", g_trails[trail][TrailEndWidth]);
DispatchKeyValueFloat(g_SpriteModel[client], "startwidth", g_trails[trail][TrailWidth]);
DispatchKeyValue(g_SpriteModel[client], "spritename", g_trails[trail][TrailMaterial]);
DispatchKeyValue(g_SpriteModel[client], "renderamt", "255");

decl String:color[32];
Format(color, sizeof(color), "%d %d %d %d", g_trails[trail][TrailColor][0], g_trails[trail][TrailColor][1], g_trails[trail][TrailColor][2], g_trails[trail][TrailColor][3]);

DispatchKeyValue(g_SpriteModel[client], "rendercolor", color);
DispatchKeyValue(g_SpriteModel[client], "rendermode", "5");

DispatchSpawn(g_SpriteModel[client]);

new Float:Client_Origin[3];
GetClientAbsOrigin(client,Client_Origin);
Client_Origin[2] += 10.0; //Beam clips into the floor without this

TeleportEntity(g_SpriteModel[client], Client_Origin, NULL_VECTOR, NULL_VECTOR);

SetVariantString(strTargetName);
AcceptEntityInput(g_SpriteModel[client], "SetParent");
SetEntPropFloat(g_SpriteModel[client], Prop_Send, "m_flTextureRes", 0.05);

return true;
}

KillTrail(client)
{
if (g_trailTimers[client] != INVALID_HANDLE)
{
CloseHandle(g_trailTimers[client]);
g_trailTimers[client] = INVALID_HANDLE;
}

if (g_SpriteModel[client] != -1 && IsValidEntity(g_SpriteModel[client]))
RemoveEdict(g_SpriteModel[client]);

g_SpriteModel[client] = -1;
}

public ZR_OnClientInfected(client, attacker, bool:motherInfect, bool:respawnOverride, bool:respawn)
{
KillTrail(client);
}

public Action:Timer_RenderBeam(Handle:timer, Handle:pack)
{
ResetPack(pack);

new client = GetClientFromSerial(ReadPackCell(pack));

if (client == 0)
return Plugin_Stop;

decl Float:velocity[3];
GetEntPropVector(client, Prop_Data, "m_vecVelocity", velocity);

new bool:isMoving = !(velocity[0] == 0.0 && velocity[1] == 0.0 && velocity[2] == 0.0);
if (isMoving)
return Plugin_Continue;

EquipTrailTempEnts(client, ReadPackCell(pack));
return Plugin_Continue;
}


/**
* Copies a 1 dimensional static array.
*
* @param array Static Array to copy from.
* @param newArray New Array to copy to.
* @param size Size of the array (or number of cells to copy)
* @noreturn
*/
stock Array_Copy(const any:array[], any:newArray[], size)
{
for (new i=0; i < size; i++)
{
newArray[i] = array[i];
}
}

MadMakz

Super Moderator

Posts: 1,878

Location: ~#

wcf.user.option.userOption53: Ja

  • Send private message

14

Friday, June 28th 2013, 11:50pm

Code bitte in CODE-Tags posten (Rautesymbol (#) im Editor) damit die Formatierung beibehalten wird.

Random778

Trainee

  • "Random778" started this thread

Posts: 127

Occupation: Schüler

wcf.user.option.userOption53: Nein

  • Send private message

15

Saturday, June 29th 2013, 12:31am

Die ganze Store Modules sind verbuggt, muss einzel testen erstmal :(.

Random778

Trainee

  • "Random778" started this thread

Posts: 127

Occupation: Schüler

wcf.user.option.userOption53: Nein

  • Send private message

16

Saturday, June 29th 2013, 12:59am

Hier die beiden sind nicht Kompatibel mit einander Klick mich & Klick mich könnte jemand das vielleicht bitte fixen!
Brauche das dringend, wäre echt sehr super nett von euch!

MfG

Bara

Professional

Posts: 834

wcf.user.option.userOption53: Ja

  • Send private message

17

Saturday, June 29th 2013, 2:38am

Habe selber Store am laufen mit den beiden Modulen, aber habe keinerlei Probleme.

Random778

Trainee

  • "Random778" started this thread

Posts: 127

Occupation: Schüler

wcf.user.option.userOption53: Nein

  • Send private message

18

Saturday, June 29th 2013, 11:25am

Laut Twistedpanda vom Sourcemod Forum: ,,which was caused by env_explosions and bad trail code. I have a modified trails and an anti-env-explosion plugni (which breaks certain explosions and maps that require them, such as deathrun_iceworld's snowmen, but at the cost of nocrashies, it's worth it)"
Könnte jemand mir das machen? Er möchte dafür 60$ das ist nicht cool... :)

Jackmaster

Super Moderator

Posts: 660

wcf.user.option.userOption53: Ja

  • Send private message

19

Saturday, June 29th 2013, 1:12pm

Ich kann dir die env_explosion aus den Maps entfernen per Plugin.

Random778

Trainee

  • "Random778" started this thread

Posts: 127

Occupation: Schüler

wcf.user.option.userOption53: Nein

  • Send private message

20

Saturday, June 29th 2013, 1:52pm

Das wäre verdammt nett von dir!
Das ist mg_YOLO_multigames...
mg_lb_holidayclub...
& mg_saw_rfix_v3 oderso..
Edit:
Kannst du mir einfach irgendwie das Plugin geben, und kann ich dann die Mapnamen rein schreiben?

This post has been edited 1 times, last edit by "Random778" (Jun 29th 2013, 2:09pm)


Similar threads