Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: sourceserver.info. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

Random778

Schüler

  • »Random778« ist der Autor dieses Themas

Beiträge: 127

Beruf: Schüler

Rootserver vorhanden: Nein

  • Nachricht senden

1

Freitag, 28. Juni 2013, 13:53

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:

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Random778« (28. Juni 2013, 14:08)


General

Super Moderator

Beiträge: 1 043

Wohnort: Mönchengladbach

Beruf: Brückenkranführer / Staplerfahrer

Rootserver vorhanden: Nein

  • Nachricht senden

2

Freitag, 28. Juni 2013, 13:59

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

Schüler

  • »Random778« ist der Autor dieses Themas

Beiträge: 127

Beruf: Schüler

Rootserver vorhanden: Nein

  • Nachricht senden

3

Freitag, 28. Juni 2013, 14:04

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

General

Super Moderator

Beiträge: 1 043

Wohnort: Mönchengladbach

Beruf: Brückenkranführer / Staplerfahrer

Rootserver vorhanden: Nein

  • Nachricht senden

4

Freitag, 28. Juni 2013, 14:09

error.log ? wenn ja hier mal rein schreiben

Newbie'

Profi

Beiträge: 580

Wohnort: Zuhause

Rootserver vorhanden: Nein

  • Nachricht senden

5

Freitag, 28. Juni 2013, 14:09

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

Schüler

  • »Random778« ist der Autor dieses Themas

Beiträge: 127

Beruf: Schüler

Rootserver vorhanden: Nein

  • Nachricht senden

6

Freitag, 28. Juni 2013, 14:10

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

General

Super Moderator

Beiträge: 1 043

Wohnort: Mönchengladbach

Beruf: Brückenkranführer / Staplerfahrer

Rootserver vorhanden: Nein

  • Nachricht senden

7

Freitag, 28. Juni 2013, 14:13

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

Schüler

  • »Random778« ist der Autor dieses Themas

Beiträge: 127

Beruf: Schüler

Rootserver vorhanden: Nein

  • Nachricht senden

8

Freitag, 28. Juni 2013, 14:14

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..

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »fluxX« (28. Juni 2013, 14:47)


General

Super Moderator

Beiträge: 1 043

Wohnort: Mönchengladbach

Beruf: Brückenkranführer / Staplerfahrer

Rootserver vorhanden: Nein

  • Nachricht senden

9

Freitag, 28. Juni 2013, 14:54

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

Random778

Schüler

  • »Random778« ist der Autor dieses Themas

Beiträge: 127

Beruf: Schüler

Rootserver vorhanden: Nein

  • Nachricht senden

10

Freitag, 28. Juni 2013, 15:13

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

Newbie'

Profi

Beiträge: 580

Wohnort: Zuhause

Rootserver vorhanden: Nein

  • Nachricht senden

11

Freitag, 28. Juni 2013, 16:50

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

Random778

Schüler

  • »Random778« ist der Autor dieses Themas

Beiträge: 127

Beruf: Schüler

Rootserver vorhanden: Nein

  • Nachricht senden

12

Freitag, 28. Juni 2013, 17:15

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

Random778

Schüler

  • »Random778« ist der Autor dieses Themas

Beiträge: 127

Beruf: Schüler

Rootserver vorhanden: Nein

  • Nachricht senden

13

Freitag, 28. Juni 2013, 23:33

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

Beiträge: 1 878

Wohnort: ~#

Rootserver vorhanden: Ja

  • Nachricht senden

14

Freitag, 28. Juni 2013, 23:50

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

Random778

Schüler

  • »Random778« ist der Autor dieses Themas

Beiträge: 127

Beruf: Schüler

Rootserver vorhanden: Nein

  • Nachricht senden

15

Samstag, 29. Juni 2013, 00:31

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

Random778

Schüler

  • »Random778« ist der Autor dieses Themas

Beiträge: 127

Beruf: Schüler

Rootserver vorhanden: Nein

  • Nachricht senden

16

Samstag, 29. Juni 2013, 00:59

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

17

Samstag, 29. Juni 2013, 02:38

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

Random778

Schüler

  • »Random778« ist der Autor dieses Themas

Beiträge: 127

Beruf: Schüler

Rootserver vorhanden: Nein

  • Nachricht senden

18

Samstag, 29. Juni 2013, 11:25

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

Beiträge: 660

Rootserver vorhanden: Ja

  • Nachricht senden

19

Samstag, 29. Juni 2013, 13:12

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

Random778

Schüler

  • »Random778« ist der Autor dieses Themas

Beiträge: 127

Beruf: Schüler

Rootserver vorhanden: Nein

  • Nachricht senden

20

Samstag, 29. Juni 2013, 13:52

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?

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Random778« (29. Juni 2013, 14:09)


Ähnliche Themen