PDA

View Full Version : Create Edict Fixer.


KyleS
06-04-2012, 10:11
THIS IS PROBABLY UNSTABLE. IF YOU'RE HAVING 'RANDOM' CRASHING ISSUES WITH IT, DON'T USE IT.

What is this?
This replaces CreateEdict on your server with a 'Custom' implementation ensuring no edicts are left unused before going into the higher indexes. This bug (of running out of edicts when you have 1000 free) is present in every Source 2009 game, CS: Global Offensive does something similar to this MM:S Plugin. This Plugin has saved me, and I wish someone found this out earlier.

Installation
Pick your engine and throw it into a CEF folder under addons. Then throw the CEF.vdf file into your metamod folder. Or change the CEF.vdf file and do whatever you want with it, it's up to you.

I've only included a build for Linux Source 2009. If you build for another game, let me know and I'll update the OP to your post.

Thanks to
Dr!fter - Being helpful as always.
Zephyrus - Showing how to use SourceHook with the SM Extension (https://forums.alliedmods.net/showthread.php?t=186730).

128 views

FudgePoly
06-04-2012, 12:48
Will this have a benefit to a non-developer, as a server owner?

Zephyrus
06-04-2012, 13:09
Will this have a benefit to a non-developer, as a server owner?

yes.

FudgePoly
06-04-2012, 14:44
Care to expand...

Powerlord
06-04-2012, 16:08
Care to expand...

This bug (of running out of edicts when you have 1000 free) is present in every Source 2009 game, CS: Global Offensive does something similar to this MM:S Plugin. This Plugin has saved me, and I wish someone found this out earlier.

To expand on it further, the game server crashes when it runs out of edict/entity indexes. This plugin tries to prevent that.

Visual77
06-04-2012, 16:12
builds for all the other games so we can try please :)

Leonardo
06-04-2012, 16:46
windows for losers? okay.

Fearts
06-04-2012, 17:32
windows for losers? okay.


https://forums.alliedmods.net/showpost.php?p=1721970&postcount=2

FudgePoly
06-04-2012, 17:34
To expand on it further, the game server crashes when it runs out of edict/entity indexes. This plugin tries to prevent that.

That's more like it, thanks!

KyleS
06-04-2012, 21:56
1.1.2 is up. I highly suggest everyone updates as I introduced two bugs in the previous build thinking I was being intelligent at the time.

Included a Windows build for OrangeBox Valve (Source 2009) and L4D2 Windows, thanks to Dr!fter.

thetwistedpanda
06-04-2012, 22:05
<3

nomy
06-05-2012, 00:39
1.1.2 is up. I highly suggest everyone updates as I introduced two bugs in the previous build thinking I was being intelligent at the time.

Included a Windows build for OrangeBox Valve (Source 2009) and L4D2 Windows, thanks to Dr!fter.
It says "[01] Create Edict Fixer (1.1.1) by Kyle Sanderson" on Windows. Hope its just a typo?

Visual77
06-05-2012, 05:51
thanks Kyles and Dr!fter. you fixed the typos in the source code too. the <engine_wrapper> to "..." that prevented compile :)
compiles fine now with VS2012 RC :)

Edit: both Dr!fters windows version and my compiled prevents my local dedicated srcds.exe to launch. I guess it crashes before server startup.
Just tried late loading it too. srcds.exe processes is killed instantly (crash). windows 7 64bit.

Can you fix that please. anyone else that having the crash problem on l4d2?

Leonardo
06-05-2012, 07:09
oh
yeah
report.
Could not get IServerPluginCallbaks interface from plugin "addons/CEF/cef_mm"
win7 x86

Dr!fter
06-05-2012, 11:01
oh
yeah
report.
Could not get IServerPluginCallbaks interface from plugin "addons/CEF/cef_mm"
win7 x86

Helps if you put the vdf inside the metamod folder since its a metamod plugin :3

Powerlord
06-05-2012, 13:44
I noticed that, much like SourceMod Extensions, Stripper: Source uses individually named .so and .dll versions for each engine version. I'm not sure if this requires special code to do or not, but it might be worth looking into.

GoD-Tony
06-05-2012, 13:54
I noticed that, much like SourceMod Extensions, Stripper: Source uses individually named .so and .dll versions for each engine version. I'm not sure if this requires special code to do or not, but it might be worth looking into.It requires a loader which then loads the correct binary for that engine. We're getting a bit off-topic but it would be cool if MM:S included a multi-engine stub plugin as well.

Zephyrus
06-05-2012, 14:40
just saying you can still use my sm extension on both platforms

Visual77
06-06-2012, 06:30
just saying you can still use my sm extension on both platforms

Yes but norton didn't like that file. could be false positive though

Zephyrus
06-06-2012, 06:49
Source is there you can just compile it yourself

Visual77
06-06-2012, 09:30
Thanks, just did. Loads fine, hope I'll see any difference :)

adrianman
06-07-2012, 05:15
can you post the working dll please? :)

Zephyrus
06-07-2012, 07:03
can you post the working dll please? :)

https://forums.alliedmods.net/showpost.php?p=1721970&postcount=2

https://www.virustotal.com/file/e44bd1dc3c1202df8fddbeacf95b6d4799ba44f7d98e5 6d682fdb8cc74b89638/analysis/1338992365/

adrianman
06-07-2012, 08:06
i mean the newer one with the bugfixes

Zephyrus
06-07-2012, 08:09
i mean the newer one with the bugfixes

that one does exactly the same except its an sm extension...

thetwistedpanda
06-07-2012, 10:45
The provided windows binary works fine for me o.O -- the sm extension worked dandy prior to switching as ewll.

Visual77
06-07-2012, 11:09
Of course it will work. the problem is in the l4d2 .dll so if you are on l4d2, go with the sm extension by Zephyrus.
funny by the way as the orange box .dll loads up fine on l4d2 (no errors at all) but the cef.dll inside left4dead2 folder crashes the server.
I guess you shouldn't be running the ob version on l4d2 either way.

KyleS
06-07-2012, 11:23
Of course it will work. the problem is in the l4d2 .dll so if you are on l4d2, go with the sm extension by Zephyrus.
funny by the way as the orange box .dll loads up fine on l4d2 (no errors at all) but the cef.dll inside left4dead2 folder crashes the server.
I guess you shouldn't be running the ob version on l4d2 either way.
Drifter debugged your issue last night and sent me a compiled binary for L4D2 (and the source). However, with this being said, I've yet to recompile for OB.


Are you sure this is even an issue under L4D2?

Visual77
06-07-2012, 11:31
That's good to hear.

Not sure what you mean with it being an issue. I just thought it was weird that the obv loaded on L4D2 because you usually get errors when you try to load .dll's that
are compiled for different engines like in this case. Either way, good that you guys found the cause to that crash :)

Silvers
06-07-2012, 12:21
Are you sure this is even an issue under L4D2?

Yeah it's a non-issue. Great work nonetheless.

Dr!fter
06-07-2012, 12:36
That's good to hear.

Not sure what you mean with it being an issue. I just thought it was weird that the obv loaded on L4D2 because you usually get errors when you try to load .dll's that
are compiled for different engines like in this case. Either way, good that you guys found the cause to that crash :)

It loads but probably would crash at some point since l4d2 doesn't use the same function for edict. Which is why it was crashing on l4d2 gpGlobals wasn't getting set. As mentioned by silvers this isn't even an issue afaik in l4d2. The main problem is on big servers with lots of entities. CS:S Zombie mod with 60 players for example.

Visual77
06-08-2012, 11:12
Well my server is 20 slots with map rotation and almost full 24/7 and I've been having crashes upon reaching the 2048 limit. happens after some time though and I got plugins that spawns a lot of items and deals with a lot of entities/edicts so what Silvers says is not completly true. It's not an issue on the normal 4-8 slot servers. (vanilla servers). remember that l4d/2 was created for 8 players only so the chance of reaching that 2048 limit would be very low.

Powerlord
06-08-2012, 15:20
By the way, what's the current edict limit in TF2? I vaguely remember they had to bump it up a year or two ago due to changes to the game making cp_steel crash every time it was loaded due to running out of edicts.

KyleS
06-08-2012, 15:30
By the way, what's the current edict limit in TF2? I vaguely remember they had to bump it up a year or two ago due to changes to the game making cp_steel crash every time it was loaded due to running out of edicts.

It's still 2047, they made changes to the maps instead of investigating the issue.

psychonic
06-09-2012, 15:20
By the way, what's the current edict limit in TF2? I vaguely remember they had to bump it up a year or two ago due to changes to the game making cp_steel crash every time it was loaded due to running out of edicts.

It's still 2047, they made changes to the maps instead of investigating the issue.

The issue with steel was stringtable overflow (for model precaching), not reaching the entity limit.

They increased the size of the string table.

Silvers
06-09-2012, 16:39
The issue with steel was stringtable overflow (for model precaching), not reaching the entity limit.

They increased the size of the string table.

Is it possible to increase the size of the string table with MM/SM? This seems an issue with L4D2. Or is that stuff client side related/also?

psychonic
06-09-2012, 16:56
Is it possible to increase the size of the string table with MM/SM? This seems an issue with L4D2. Or is that stuff client side related/also?

Can't increase it. It uses hardcoded array sizes on both client and server.

adrianman
06-10-2012, 17:09
check out map c6m1_riverbank in l4d2,if you play it for a bit,then vote to restart the campaign/map the server will crash with the no free edicts error,same goes for scavenge on the same map,as soon as the round ends for both teams i think,but it happens. Did valve forgot to clean up edicts on round end there?

Visual77
06-15-2012, 02:13
Drifter debugged your issue last night and sent me a compiled binary for L4D2 (and the source). However, with this being said, I've yet to recompile for OB.


Are you sure this is even an issue under L4D2?

Can we atleast test it? L4D2 might just run more smooth for me with it.
I didn't see much of a differense with the SM extension. Maybe because of CreateEdict being different on l4d.

daleGEND
06-15-2012, 06:30
For some odd reason this broke Zombie Reloaded so that when a Zombie was spawned they could not infect others. Anyone else experience this issue?

KyleS
06-15-2012, 06:34
Can we atleast test it? L4D2 might just run more smooth for me with it.
I didn't see much of a differense with the SM extension. Maybe because of CreateEdict being different on l4d.
Sure.

For some odd reason this broke Zombie Reloaded so that when a Zombie was spawned they could not infect others. Anyone else experience this issue?
They can't attack. Try updating SourceMod (And MM:S) to their latest snapshots (ie 1.5 and 1.9). I don't know what it is, but I too ran into this issue on a few servers. Updating seemed to 'fix' it.

Visual77
06-15-2012, 07:32
Thanks Kyles.

daleGEND
06-16-2012, 08:19
Sure.


They can't attack. Try updating SourceMod (And MM:S) to their latest snapshots (ie 1.5 and 1.9). I don't know what it is, but I too ran into this issue on a few servers. Updating seemed to 'fix' it.

Still doesn't work Kyle. I updated to the latest snapshots and only the motherzombie can knife other people. The regular zombies cannot. :(

Mike_BoG
06-17-2012, 13:36
I installed this correctly and used the "cef_mm_i486.so" file on Ubuntu 12.04, got crashes with it. Here is the bt of it: http://pastebin.com/raw.php?i=2zJwftH4

KyleS
06-17-2012, 18:51
I installed this correctly and used the "cef_mm_i486.so" file on Ubuntu 12.04, got crashes with it. Here is the bt of it: http://pastebin.com/raw.php?i=2zJwftH4Try this.

Mike_BoG
06-18-2012, 16:10
Nope still crahsing

KyleS
06-18-2012, 16:21
Nope still crahsing
Yeah, I didn't think it would change anything sadly.

Sorry, I have no idea. It doesn't even point to the plugin :s

Mike_BoG
06-20-2012, 11:26
Are you sure it's the correct binary for a x64 bit system? I have no idea either, FlamingSarge ran it on his server together with Randomizer succesfully so they shouldn't be affecting eachother.

KyleS
06-20-2012, 13:14
Are you sure it's the correct binary for a x64 bit system? I have no idea either, FlamingSarge ran it on his server together with Randomizer succesfully so they shouldn't be affecting eachother.

Its possible. Can you compile the source on your system? I'll remove some of the optimization flags as I think I may have set march to native which would explain some issues.

You can't mix 32 and 64bit libraries :P the binary is 32bit.

Velture
06-23-2012, 13:20
This ext works with TF2?

Powerlord
06-23-2012, 14:40
This ext works with TF2?

This ext was made for Source 2009 games, which include HL2:DM, DoD:S, CS:S, and TF2. And possibly Garry's Mod, I've never been sure.

Zephyrus
06-23-2012, 15:34
This ext was made for Source 2009 games, which include HL2:DM, DoD:S, CS:S, and TF2. And possibly Garry's Mod, I've never been sure.

well this is probably fixed in gmod but even if its not, i think the entity limit there is pretty much unlimited

Mike_BoG
06-23-2012, 17:52
Its possible. Can you compile the source on your system? I'll remove some of the optimization flags as I think I may have set march to native which would explain some issues.

You can't mix 32 and 64bit libraries :P the binary is 32bit.

Want to give me a quick tut on how to compile it?

Mitchell
06-25-2012, 23:05
i think the entity limit there is pretty much unlimited
Right when you said that, 10 severs that are running sandbox crashed, because of an exceeding limit of props, because some kid just used the prop spawner exploit on their server.

But i would say this fix already exsists on gmod. Just because they use alot of props.
Also GMOD 13 stats a new prop limit of 4096 (or something in the 4k) entitys appealing from the old restriction of 2048.

daleGEND
06-26-2012, 07:22
Have you had a chance to look into that ZombieReloaded issue? Any idea why infection stops working?

Edit: Yea, I just tested again with the latest linux snapshots of SM 1.5 and MM 1.9 with this issue still taking place.

Zephyrus
06-26-2012, 08:32
Right when you said that, 10 severs that are running sandbox crashed, because of an exceeding limit of props, because some kid just used the prop spawner exploit on their server.

But i would say this fix already exsists on gmod. Just because they use alot of props.
Also GMOD 13 stats a new prop limit of 4096 (or something in the 4k) entitys appealing from the old restriction of 2048.

is it really that low? i even have video somewhere in which i explode 5000 barrels

altho that was on my own listen server in gmod10

Mike_BoG
06-27-2012, 10:27
Hmm I would really like to use this, as I believe it fixes some of the errors I'm having. Cant figure out how to compile it though.

Mike_BoG
06-27-2012, 13:43
http://pastebin.com/raw.php?i=hFK7Q4nP

New dump, asherkin couldn't figure anything out of it.

Mike_BoG
06-30-2012, 12:21
Another one here.. I have no idea what this is.
http://pastie.org/private/2pdxzx2fhaqpffob70rs8q

KyleS
06-30-2012, 13:36
Added a disclaimer to the top.

Visual77
07-02-2012, 06:51
1.1.4 dosn't crash my l4d2 server, neither did zephyrus SM extension.
I'm noticing slithgly higher server uptime when using one of these so thanks.

Mitchell
07-07-2012, 21:57
Would this (or more specifically the SM Extension windows version) remove any entities? Cuase im having issues with this, after a certain point it removes exsisting props.
i do: !count which counts every ones' current prop limit i get this:
[SnBx] Props: 365 Entitys: 1596.
Seems rather wrong...
So i reloaded the map and got this:
[SnBx] Props: 242 Entitys: 389.
Looks right. is there a fix for this, where it doent use props that arleady exsist?

KyleS
07-07-2012, 22:08
Would this (or more specifically the SM Extension windows version) remove any entities? Cuase im having issues with this, after a certain point it removes exsisting props.
i do: !count which counts every ones' current prop limit i get this:
[SnBx] Props: 365 Entitys: 1596.
Seems rather wrong...
So i reloaded the map and got this:
[SnBx] Props: 242 Entitys: 389.
Looks right. is there a fix for this, where it doent use props that arleady exsist?
I honestly don't understand the question. No, it doesn't remove 'props'.

Mitchell
07-08-2012, 17:08
I honestly don't understand the question. No, it doesn't remove 'props'.
well after i posted that, i felt really dumb cause, it wasnt the extension, i beilieve the extension worked fine, apperantly it's my sandboxx plugin, it's lowering a local variable as well... I'm not sure how it's happening but ill have to work into it.

Horsedick
07-25-2012, 17:56
I'm getting this error or at least ED_Alloc: no free edicts and a server crashes that I run an achievement map (windows server). What exactly do I need to put where for this to work to prevent this problem?

Mitchell
07-26-2012, 15:32
I'm getting this error or at least ED_Alloc: no free edicts and a server crashes that I run an achievement map (windows server). What exactly do I need to put where for this to work to prevent this problem?

YOu have to use the extension version of this, with an autoload file.

soja92
08-06-2012, 14:33
This plugin does work for our server, however, when players are turned into zombies, they aren't given their zombie_claws_of_death(knife).

Has anyone found a workaround/fix for this? (already have latest sm/mm:s snapshots)

Thanks

KyleS
08-06-2012, 19:42
This plugin does work for our server, however, when players are turned into zombies, they aren't given their zombie_claws_of_death(knife).

Has anyone found a workaround/fix for this? (already have latest sm/mm:s snapshots)

Thanks

Never tell your password to anyone.
SoJa: would you mind taking a look at my question in your "create edict fixer." MM:S plugin thread when you get a chance
KyleS | @:< |: I can only suggest people not use it
SoJa: do you think there is a simple workaround?
SoJa: not having a crash issue
KyleS | @:< |: I do not, there's nothing wrong. What I'm doing is unsafe
SoJa: zombies aren't getting their weapons
KyleS | @:< |: Bor3d has the same issue
SoJa: yeah i saw
KyleS | @:< |: Only thing I can say is I write a lot of my own code
SoJa: ok, thanks

Shona
09-09-2012, 07:27
I'm getting this error or at least ED_Alloc: no free edicts and a server crashes that I run an achievement map (windows server). What exactly do I need to put where for this to work to prevent this problem?
Have the same with the map Achievement_TurboV14 since a the latest 2-3 updates from valve -.-"

I also not understand how i have to use this fix

Shona
09-14-2012, 07:40
No one?

KyleS
09-14-2012, 10:46
No one?

This will only help you if you don't actually have the edicts allocated. From what it sounds like is attachables are created but never destroyed on the player.

Helvetica
11-02-2012, 21:41
Can this plugin be updated to work with Metamod 1.10? Linux servers need this MM snapshot now after the Halloween Update and this plugin won't work with it.

Zephyrus
11-02-2012, 22:14
Can this plugin be updated to work with Metamod 1.10? Linux servers need this MM snapshot now after the Halloween Update and this plugin won't work with it.

this is meant to work with css and im pretty sure it didnt get renamed libraries after the update

KyleS
11-03-2012, 01:44
Can this plugin be updated to work with Metamod 1.10? Linux servers need this MM snapshot now after the Halloween Update and this plugin won't work with it.
This seems to cause a lot of problems with TF2 (via one mikeey). The only game that it seems to be stable on is CS:S.

Are you actually using this on TF2 and not seeing any problems? :s

Helvetica
11-03-2012, 07:56
This seems to cause a lot of problems with TF2 (via one mikeey). The only game that it seems to be stable on is CS:S.

Are you actually using this on TF2 and not seeing any problems? :s

I've been using it with TF2 for about two months now and it's given me no problems. It definitely works as well, I was running out of edicts every 20-30 minutes after the Pyromania Update. With your plugin installed the No free edict error has virtually disappeared for me.

TF2's most recent update requires Linux users to use Metamod 1.10 snapshots, and this plugin does not appear to load with it. I've begun receiving the No free edicts error again, about every 20-30 minutes just like before so I am quite certain this plugin was doing it's job before.

KyleS
11-03-2012, 15:43
I've been using it with TF2 for about two months now and it's given me no problems. It definitely works as well, I was running out of edicts every 20-30 minutes after the Pyromania Update. With your plugin installed the No free edict error has virtually disappeared for me.

TF2's most recent update requires Linux users to use Metamod 1.10 snapshots, and this plugin does not appear to load with it. I've begun receiving the No free edicts error again, about every 20-30 minutes just like before so I am quite certain this plugin was doing it's job before.
I had no idea this actually worked for someone on TF2 :P Sorry for the delay. Try this binary.

Helvetica
11-03-2012, 23:50
I had no idea this actually worked for someone on TF2 :P Sorry for the delay. Try this binary.

Thank you very much! It's working great.

Smarmy
12-23-2012, 11:45
Just got a crash in TF2:


Engine error: ED_Alloc: no free edicts

But this will not work for TF2?

Mr. Man
02-23-2013, 09:03
I've had numerous crashes related to this problem and have "installed" the Linux .so file in the extension folder in SM. Did I do that right? I don't see the indicated .vdf file as you've stated in the first post.

When I type meta list I don't see it loaded, so I would assume I am doing it wrong.

11530
02-23-2013, 09:25
I've had numerous crashes related to this problem and have "installed" the Linux .so file in the extension folder in SM. Did I do that right? I don't see the indicated .vdf file as you've stated in the first post.

When I type meta list I don't see it loaded, so I would assume I am doing it wrong.

This isn't a SourceMod extension, it's a MetaMod:Source plugin. I have my .so in tf/addons/CEF with the corresponding .vdf in tf/addons/metamod.

Mr. Man
02-23-2013, 09:27
This isn't a SourceMod extension, it's a MetaMod:Source plugin. I have my .so in tf/addons/CEF with the corresponding .vdf in tf/addons/metamod.

Where is this .vdf file?

11530
02-23-2013, 09:28
I can't find it in the OP either. Too lazy to search the thread.

This is the contents of my CEF.vdf :


"Metamod Plugin"
{
"alias" "CEF"
"file" "addons/CEF/cef_mm"
}

Mr. Man
02-23-2013, 09:30
Thanks for the help! That cleared it up for me.

Mr. Man
02-23-2013, 14:07
I just received this crash a while ago, though it didn't indicated itself to be an edict crash. I am not sure whether it is related to edicts:

http://i.imgur.com/Fn20wEH.png

Powerlord
02-23-2013, 16:13
I just received this crash a while ago, though it didn't indicated itself to be an edict crash. I am not sure whether it is related to edicts:

http://i.imgur.com/Fn20wEH.png

Are you... loading a Linux dmp file using the Windows debugger?

Mr. Man
02-23-2013, 16:26
Guilty as charged. I used to use Accelerator before Valve took a huge dump on it.

Powerlord
02-23-2013, 17:39
Guilty as charged. I used to use Accelerator before Valve took a huge dump on it.

Probably need to run it via gdb to get anything useful out of it.

Mr. Man
02-23-2013, 19:17
Probably need to run it via gdb to get anything useful out of it.

Noted. I will look around and see what I can find.

AeroAcrobat
02-23-2013, 21:00
I've loaded cef in TF2 (server os: linux)
Create Edict Fixer (1.1.4) by Kyle SandersonI've spawned skulls (impulse 102) until the server crashed.
Engine error: ED_Alloc: no free edicts

asherkin
02-23-2013, 21:19
Probably need to run it via gdb to get anything useful out of it.

You have to compile and use the google-breakpad (https://code.google.com/p/google-breakpad/) tools.

EDIT: You'll also need symbol files if you want any real info.

Powerlord
02-24-2013, 05:11
EDIT: You'll also need symbol files if you want any real info.

Is CEF built without symbols? Because Valve added them back in for TF2's .so files a while back.

asherkin
02-24-2013, 07:01
Is CEF built without symbols? Because Valve added them back in for TF2's .so files a while back.

Breakpad doesn't operate with the binaries present, and it's included tools will only work with binaries built with debugging symbols.

Mr. Man
02-26-2013, 17:10
You have to compile and use the google-breakpad (https://code.google.com/p/google-breakpad/) tools.

EDIT: You'll also need symbol files if you want any real info.

I am currently on the Google breakpad code page and am a bit lost. Can you give me a few pointers as to how I can compile this myself? And by symbol files I would assume you mean this: https://code.google.com/p/google-breakpad/wiki/SymbolFiles ?

Powerlord
02-26-2013, 17:15
I am currently on the Google breakpad code page and am a bit lost. Can you give me a few pointers as to how I can compile this myself? And by symbol files I would assume you mean this: https://code.google.com/p/google-breakpad/wiki/SymbolFiles ?
I think Asherkin was saying earlier that you also need CEF compiled as a Debug build.

Mr. Man
02-26-2013, 17:22
I am currently browsing the source directory: http://google-breakpad.googlecode.com/svn/trunk/src/. Is there a tool that allows me to download the file directory without having to download every file individually?

KyleS
02-26-2013, 17:28
I am currently browsing the source directory: http://google-breakpad.googlecode.com/svn/trunk/src/. Is there a tool that allows me to download the file directory without having to download every file individually?

Are you running Windows or Linux? Windows is pretty impossible to debug. Linux is easier in the sense you have the function action names and offset into the function.

But yeah, we need to know what platform you're on. Accelerator not working, and what you pasted before hints Windows, but Powerlord is saying Linux so :s

EDIT: core files if Linux, disable break pad with -nobreakpad, and set -gdb to your gdb path. Make sure ulimit -c is set to unlimited.

Mr. Man
02-26-2013, 17:30
Are you running Windows or Linux? Windows is pretty impossible to debug. Linux is easier in the sense you have the function action names and offset into the function.

But yeah, we need to know what platform you're on. Accelerator not working, and what you pasted before hints Windows, but Powerlord is saying Linux so :s

I am using Linux for my servers.

Powerlord
02-26-2013, 17:31
Are you running Windows or Linux? Windows is pretty impossible to debug. Linux is easier in the sense you have the function action names and offset into the function.

But yeah, we need to know what platform you're on. Accelerator not working, and what you pasted before hints Windows, but Powerlord is saying Linux so :s
Apparently the quoted part that mentioned vstdlib_srv.so and the like was removed from an earlier post.

Having said that, I was going to build a debug version of this, but apparently the Makefile in the .tar.gz is out of date, as it tries to build the OB Valve version against vstdlib.so instead of vstdlib_srv.so.

KyleS
02-26-2013, 17:44
Apparently the quoted part that mentioned vstdlib_srv.so and the like was removed from an earlier post.

Having said that, I was going to build a debug version of this, but apparently the Makefile in the .tar.gz is out of date, as it tries to build the OB Valve version against vstdlib.so instead of vstdlib_srv.so.

Unfortunately breakpad dumps are completely stripped. He's going to need a core file if you're looking to debug like this. If he were to send you his dump file privately right now, you could look at the offset into the binary and guess the jumps/functions. But his console history , startup line, and potentially other private things could be leaked (same as a core file), so it's up to him.

Mr. Man
02-26-2013, 17:44
I was hoping for a program where I can run .dmps through to see what plugins/features were causing my servers to restart, to be frank.

KyleS
02-26-2013, 17:46
I was hoping for a program where I can run .dmps through to see what plugins/features were causing my servers to restart, to be frank.

The problem is we don't have the information to reverse it. Asherkin's accelerator was a great attempt/success, but if its no longer functioning (assuming due yo a change), we're going to need a core file to proceed.

(Core files are what your system creates by default when an application crashes. This breakpad/other silly business wasn't/isn't intended for developers without the actual source code. gdb is a great debugger, and was built to handle reading core files as they're pretty standard across unices. What isn't standard, and is a 3rd party thing is the break pad system and the .dmp file you currently have in your possession. It's unfortunate that Valve hasn't expanded on this at all, but that's the way it goes :( ).

Mr. Man
02-26-2013, 17:48
The problem is we don't have the information to reverse it. Asherkin's accelerator was a great attempt/success, but if its no longer functioning (assuming due yo a change), we're going to need a core file to proceed.

Interesting. So all you're missing was an actual .dmp file? I can supply one. So how are people actually reading the .dmp files?

daad
03-17-2013, 13:23
Does this plugin work for HL2DM? I am running on Linux and one of my four servers has started having this problem. I do not see HL2DM in any of the files. I also do not see a .vdf file to stick in MM folder. Can someone help a non-coder?

TY/Daad

11530
03-17-2013, 16:29
[...] I also do not see a .vdf file to stick in MM folder. Can someone help a non-coder?

I'll direct you to my post near the top of Page 9 (https://forums.alliedmods.net/showthread.php?t=186830&page=9).

scopesp
03-18-2013, 17:08
hey,
how i know this is running?
i do see in meta list
[02] Create Edict Fixer (1.1.4) by Kyle Sanderson
but still getting ED_Alloc: no free edicts in linux serv

thanks

KyleS
03-18-2013, 17:14
hey,
how i know this is running?
i do see in meta list
[02] Create Edict Fixer (1.1.4) by Kyle Sanderson
but still getting ED_Alloc: no free edicts in linux serv

thanks

Unfortunately this does nothing for sequential buildups of edicts. Only if a ton are allocated/freed in a certain period will this *maybe* help you.

Electr000999
06-26-2013, 16:36
check out map c6m1_riverbank in l4d2,if you play it for a bit,then vote to restart the campaign/map the server will crash with the no free edicts error,same goes for scavenge on the same map,as soon as the round ends for both teams i think,but it happens. Did valve forgot to clean up edicts on round end there?


this issue is still down the server. map c6m1_riverbank gamemode survival and coop, play time 5-10 min, spawn props 200-300 (and i have reserve in 400 prop)

dump analyses by http://crash.limetech.org/

0 engine.so!Sys_Error_Internal(bool, char const*, char*) + 0xd8
1 engine.so!Sys_Error(char const*, ...) + 0x20
2 engine.so!ED_Alloc(int) + 0x1cb
3 engine.so!CVEngineServer::CreateEdict(int) + 0x1d
4 server.so + 0x6703b3
5 server.so + 0x3fe471
6 server.so + 0x49d00d
7 server.so + 0xa3f574
8 sdkhooks.ext.2.l4d2.so + 0x1d798
9 server.so + 0x518131
10 server.so + 0x2d9e01
11 server.so + 0x518313
12 server.so + 0x519734
13 server.so + 0x2d9d5d
14 server.so + 0x2de0a5
15 server.so + 0x6f7e82
16 server.so + 0x6fc2a5
17 server.so + 0x6fcb8f
18 server.so + 0x4eae17
19 sourcemod.2.l4d2.so!__SourceHook_FHCls_IServe rGameDLLGameFramefalse::Func(bool) [sourcemod.cpp:54 + 0x149]
20 engine.so!CServerPlugin::GameFrame(bool) + 0x82
21 engine.so!SV_Think(bool) + 0xb7
22 engine.so!SV_Frame(bool) + 0x104
23 engine.so!_Host_RunFrame_Server(bool) + 0xa8
24 engine.so!_Host_RunFrame(float) + 0x3ab
25 engine.so!CHostState::State_Run(float) + 0x60
26 engine.so!.L155 + 0x12
27 engine.so!HostState_Frame(float) + 0x27
28 engine.so!CEngine::Frame() + 0x172
29 engine.so!CDedicatedServerAPI::RunFrame() + 0x35
30 dedicated.so!RunServerIteration(bool) + 0x56
31 dedicated.so!RunServer(bool) + 0x50
32 dedicated.so!CDedicatedExports::RunServer() + 0x73
33 engine.so!CModAppSystemGroup::Main() + 0xb7
34 engine.so!CAppSystemGroup::Run() + 0x39
35 engine.so!CDedicatedServerAPI::ModInit(ModInf o_t&) + 0x134
36 dedicated.so!CDedicatedAppSystemGroup::Main() + 0xc5
37 dedicated.so!CAppSystemGroup::Run() + 0x39
38 dedicated.so!CSteamApplication::Main() + 0x37
39 dedicated.so!CAppSystemGroup::Run() + 0x39
40 dedicated.so!main + 0x2fe
41 dedicated.so!DedicatedMain + 0x24
42 srcds_linux + 0x83c
43 libc-2.11.3.so + 0x16ca6
44 srcds_linux + 0x6c1
45 srcds_linux + 0x740
46 srcds_linux + 0x932
47 srcds_linux + 0x8f0
48 ld-2.11.3.so + 0xee30
49 ld-2.11.3.so + 0x1d900

deathkilla
07-07-2013, 14:34
2 questions for yah

does this still work? as i am having the issues of Engine error: ED_Alloc: no free edicts

and does this work on windows servers?

Thanks =)

Martijn79
07-29-2013, 03:18
Tested it, it doesn't work. For me the no free edicts seems l4dtoolz related though. If I disable that everything works fine.

Huwarf
07-30-2013, 13:17
Am I the only one who doesn't understand how to install this plugin thingy? There is a lot of files. People speak bout .so and .vdf i got a lot of other files.
I found out where to put it but the thing is that 2 of the .so files are shortcuts not actual files.

zeroibis
08-11-2013, 05:50
Is 1.1.1 the latest version, I get engine crashes with a prompt (which also prevents it from closing out and recovering) saying no free edicts. The issue really likes to occur when the server is full :(

deathkilla
08-16-2013, 14:51
Does this have a windows version?

nomy
08-16-2013, 15:32
Try going to the first page and clicking the link in Fire's post.

StrikerMan780
08-18-2013, 22:09
Breakpad doesn't operate with the binaries present, and it's included tools will only work with binaries built with debugging symbols.
Valve really ought to start including PDB files with their windows server binaries.

zeroibis
08-20-2013, 20:51
Does this have a windows version?

As I stated earlier even when running the windows version you still get the error and the engine crashes.

Does anyone at least know how to suppress the dialog box so the server can restart after it runs out of edicts.

zeroibis
08-20-2013, 20:58
Ah realized I was using 1.1.1 but the latest is 1.1.3 so I am trying that now :D

deathkilla
08-20-2013, 21:06
My server crashes so much due to this error haha. Let me know if that works Zeroibis

KyleS
08-20-2013, 22:04
Ah realized I was using 1.1.1 but the latest is 1.1.3 so I am trying that now :D If it's an actual leak this won't save you, and using the new engine cvars will work just fine for you. However, if it's on a round ending or something, this will most likely save you.

zeroibis
08-20-2013, 23:53
Yea never been in game when it occurs but it appears to happen only when the server is on particular maps and almost full but not always. So hopefully now that I have the correct version installed the problem will get smashed out.

zeroibis
08-24-2013, 03:47
Is there any way to tell the engine to suppress the error dialog box from popping up?

KyleS
08-24-2013, 22:26
Is there any way to tell the engine to suppress the error dialog box from popping up?
-nocrashdialog

OddworldCrash
10-10-2013, 15:59
I have no clue how to install this mod. The installation guide is not really helpful..

Edit:
I have the "No free Edicts"-Error with Team Fortress 2.
So i tried to install this mod:
Creating a CEF folder in tf/addons,
Upload cef_mm_i486.so in this CEF Folder (only this one file?),
Upload the CEF.vdf in the metamod folder with the content:

"Metamod Plugin"
{
"alias" "CEF"
"file" "addons/CEF/cef_mm"
}

I can't load the plugin with "rcon meta load addons/cef/cef_mm_i486" or "rcon meta load addons/cef/cef_mm" via console.

Please help :(

Groger
12-08-2013, 04:49
Really need this plugin for windows. Someone willing to compile?

We use store and are running in the same problem, after the second round with a full server. Boom server crashes:
Engine error: ED_Alloc: no free edicts

kadet.89
04-05-2014, 10:41
I cant run it, there is an error:
Failed to load plugin addons/CEF/cef_mm (/lib/libm.so.6: version `GLIBC_2.15' not found (required by bin/libvstdlib.so)).
Can somebody help me?

donrevan
04-05-2014, 12:31
What game?
You most likely need to alter the makefile for your current game because it links to a wrong library.

kadet.89
04-05-2014, 14:27
Counter strike source.
And I can't build it under ubuntu.. to many errors

My implementation (doesn't work as it should):

DETOUR_DECL_MEMBER1(DetourCreateEdict, edict_t *, int, iIndex)
{
if (iIndex > 0)
{
return NULL;
}
int i = 0;
while (DETOUR_MEMBER_MCALL_CALLBACK(DetourPEntityOf EntIndex, this)(i) != NULL) // always != NULL
{
i++;
}
if (i == 2047)
{
return NULL;
}
edict_t * pEdict = DETOUR_MEMBER_CALL(DetourCreateEdict)(i);
if (pEdict == NULL)
{
return NULL;
}
return pEdict;
}
it crashes. PEntityOfEntIndex(i) is always != NULL

Powerlord
04-06-2014, 13:45
What game?
You most likely need to alter the makefile for your current game because it links to a wrong library.

This is because the version in the first post hasn't been updated since Source 2009 started using libvstdlib_srv.so (happened in early 2013 I think).

KyleS
04-06-2014, 14:23
This is because the version in the first post hasn't been updated since Source 2009 started using libvstdlib_srv.so (happened in early 2013 I think). If he wasn't running an ancient system... it should just work.

asherkin
04-06-2014, 14:27
If he wasn't running an ancient system... it should just work.

Pulling client versions of the same binaries into the server process is never going to be a good idea anyway.

Powerlord
04-07-2014, 11:12
So, using this Makefile (adapted from my SM 1.6 updated sample extension files and the sample_mm Makefile), I've compiled new versions of this for HL2:DM, DoD:S, CS:S, and TF2.

I haven't compiled (or tested) other versions.

I've also included a vdf file since it appears to have gone missing... it assumes you're putting the .so in the addons/cef/ directory. The VDF file itself goes in the addons/metamod/ directory.

Unfortunately, I can't tell if MM:S supports multiple versions of a plugin side by side like SM extensions do. I know it won't load cef_mm_i486.2.tf2.so with this .vdf, but I could have the naming syntax wrong.

asherkin
04-07-2014, 11:33
MM:S has no concept of engine-specific loading.

Powerlord
04-07-2014, 11:48
MM:S has no concept of engine-specific loading.
I was afraid you were going to say that, but I remembered seeing a bug about it ages ago and wasn't sure if it ever got implemented.

kadet.89
04-09-2014, 11:27
Unfortunately plugin hardly reduces the number of crashes.
What if delete edict numbered 2046 when the counter reaches 2047? I know it's not a good idea, but it can prevent a server crash.
And, as I can see, after round end some edicts don't destroyed...

PresidentEvil
06-21-2014, 15:55
how would I install this on csgo

Powerlord
06-24-2014, 14:21
how would I install this on csgo

CS:GO has this built into the game engine so there's no point.

PresidentEvil
06-24-2014, 21:19
CS:GO has this built into the game engine so there's no point.

am I confused?


func_breakable (hoop2) at (-3635.150 -1611.990 1790.400) using obsolete or unknown material type.
func_physbox_multiplayer (soccer_ball) at (-2270.650 -164.520 215.000) using obsolete or unknown material type.
ED_Alloc: no free edicts
PreMinidumpCallback: updating dump comment
Uploading dump (in-process) [proxy '']
/tmp/dumps/crash_20140623214945_2.dmp
success = yes
response: CrashID=bp-a7042548-ec93-409a-bf80-14dc02140624
./exec_slayersjb.run: line 318: 16738 Segmentation fault (core dumped) $HL_CMD

warning: Could not load shared library symbols for linux-gate.so.1.
Do you need "set solib-search-path" or "set sysroot"?
email debug.log to [email protected]
Tue Jun 24 02:23:08 PDT 2014: Server Quit

asherkin
06-25-2014, 04:11
There is always a finite number of edicts, this extension just allows freed ones to be reused prematurely before it's safe to do so - you can still run out.

694372459
09-20-2014, 21:39
it doen't support windows? D:

kadet.89
09-21-2014, 05:54
694372459,

If you can't find the reason of this error, just add this 2 lines in your server.cfg

sv_lowedict_action 4
sv_lowedict_threshold 32

It'll prevent server crash by map change when there are only 32 free edicts left.
This extension only slightly reduces the likelihood of a server crash.

SM9
09-21-2014, 07:57
694372459,

If you can't find the reason of this error, just add this 2 lines in your server.cfg

sv_lowedict_action 4
sv_lowedict_threshold 32

It'll prevent server crash by map change when there are only 32 free edicts left.
This extension only slightly reduces the likelihood of a server crash.

Or you could add this alongside this plugin.
https://forums.alliedmods.net/showthread.php?t=247684

bottiger
11-30-2014, 16:18
I'm on TF2 and none of the alternatives seem to help, but I'm afraid to use this extension if it is known to cause crashes.

I did a lot of testing recently and I would like to share my findings.

694372459,

If you can't find the reason of this error, just add this 2 lines in your server.cfg

sv_lowedict_action 4
sv_lowedict_threshold 32

It'll prevent server crash by map change when there are only 32 free edicts left.
This extension only slightly reduces the likelihood of a server crash.

I have these settings and I am still getting ED_ALLOC crashes.

Or you could add this alongside this plugin.
https://forums.alliedmods.net/showthread.php?t=247684

This plugin doesn't work either. I tested all the methods in here.

- On TF2, GetEntityCount does not return the highest edict index anymore, it tries to return the number of entities in use. However, sometimes it goes negative, so this function is completely useless.

- The game seems to correctly reuse lower entity numbers. I hooked OnEntityCreated and printed the entity number and the highest used entity number, and most of the time, the entity number is lower than the highest used entity number.

So this means that you will get many false positives if you try to restart the map when the highest used index is high. This also seems to suggest that TF2 is already doing what CEF is doing.

- I also tried counting the entities myself but the server still triggered ED_ALLOC without triggering my threshold

kadet.89
12-01-2014, 03:29
As You can see, there aren't many people here, who have this problem, so it's not a usual situation. I've got a large server with a lot of players (40-50), sometimes even 64 and there are a lot of plugins that create many entities during a round (mines, attachments, etc.). Even so my server hardly ever reaches this limit.
If you receive this error on a regular basis, then it is likely that there is a "leak".

This leak may be caused by maps (for example: ze_fapescape_v1_2, ze_harry_potter_b2, ze_portal_story_v3_2) or plugins (GoreMod v3.2.5, every players shoot it spawns a new blood entity). So check all the maps by "console.log". If it happens on different maps, then try to disable some plugins.

Also, you can print to the console each new entity classname: https://sm.alliedmods.net/api/index.php?fastload=show&id=1021& maybe this will help you to find the reason

VoiDeD
12-01-2014, 13:52
- The game seems to correctly reuse lower entity numbers. I hooked OnEntityCreated and printed the entity number and the highest used entity number, and most of the time, the entity number is lower than the highest used entity number.



- Improved edict usage on servers to help eliminate "out of edicts" errors during round restarts


Is probably the reason for the behavior you're describing.

Either way, neither that change nor the sv_lowedict convars actually seem to function in certain situations where many entities tend to get recreated: round restarts.

bottiger
12-02-2014, 20:39
If I make a plugin to do CreateEntityByName("prop_dynamic") 2000 times, sv_lowedict_action seems to work.

However I am still getting ED_Alloc crashes at least once a week. Unfortunately I do not know if it is happening when the round restarts. Aren't entities supposed to be wiped when a round restart occurs?

bottiger
12-07-2014, 22:02
I managed to dump the entity list. Nothing seems to be out of the ordinary and the number of edicts and entities are both 1762 (manually counting from 0-2047) but the top ones are 2047.


L 12/07/2014 - 11:13:31: pl_goldrush
L 12/07/2014 - 11:13:31: edict 1762 top 2047 entities 1762 top 2047
L 12/07/2014 - 11:13:31: 174 - path_track
L 12/07/2014 - 11:13:31: 172 - prop_dynamic
L 12/07/2014 - 11:13:31: 126 - func_areaportal
L 12/07/2014 - 11:13:31: 94 - tf_wearable
L 12/07/2014 - 11:13:31: 84 - point_spotlight
L 12/07/2014 - 11:13:31: 84 - spotlight_end
L 12/07/2014 - 11:13:31: 84 - beam
L 12/07/2014 - 11:13:31: 76 - info_player_teamspawn
L 12/07/2014 - 11:13:31: 71 - func_lod
L 12/07/2014 - 11:13:31: 66 - keyframe_rope
L 12/07/2014 - 11:13:31: 62 - env_sprite
L 12/07/2014 - 11:13:31: 61 - env_soundscape_proxy
L 12/07/2014 - 11:13:31: 58 - tf_viewmodel
L 12/07/2014 - 11:13:31: 43 - func_brush
L 12/07/2014 - 11:13:31: 42 - func_door
L 12/07/2014 - 11:13:31: 36 - func_occluder
L 12/07/2014 - 11:13:31: 31 - move_rope
L 12/07/2014 - 11:13:31: 29 - instanced_scripted_scene
L 12/07/2014 - 11:13:31: 25 - func_nobuild
L 12/07/2014 - 11:13:31: 17 - tf_weapon_minigun
L 12/07/2014 - 11:13:31: 15 - item_ammopack_full


Unfortunately it seems like the server will reach high edict numbers without ever running out, so it doesn't seem to be a good solution to restart the server whenever an entity with a high edict number is spawned.

woklex
01-23-2015, 15:27
Anyone can compile it for insurgecny? I also have this problem, this plugin can help. Here is the plugin has not helped https://forums.alliedmods.net/showthread.php?t=247684

Graffiti
02-12-2015, 11:49
OC: Linux
Game: CS:GO

] sm_rcon meta refresh
L 02/12/2015 - 19:48:21: [META] Failed to load plugin addons/cef/cef_mm: /home/disk2/jail/27617/csgo/addons/cef/cef_mm_i486.so: undefined symbol: __cxa_pure_virtual

Please, help

Graffiti
03-01-2015, 06:28
please, fix

kadet.89
03-09-2015, 13:08
I hooked the message:
"Warning: free edicts below threshold. 99 free edicts remaining"
and made a dump of ent's
Here are my results:

L 03/09/2015 - 15:43:33: [EDICTSTHRESHOLD] Edicts Threshold Value 99
OnEdictsThreshold 99
OnEdictsThreshold count 985 highindex 1947
OnEdictsThreshold infodecal count 0

report_entities dump (at this moment):
Class: _firesmoke (6)
Class: ai_network (1)
Class: ambient_generic (85)
Class: beam (24)
Class: color_correction (7)
Class: cs_gamerules (1)
Class: cs_player_manager (1)
Class: cs_team_manager (4)
Class: env_embers (5)
Class: env_entity_maker (35)
Class: env_explosion (10)
Class: env_fade (2)
Class: env_fire (6)
Class: env_laser (18 )
Class: env_shake (7)
Class: env_spark (1)
Class: env_sprite (10)
Class: env_sun (1)
Class: filter_activator_class (1)
Class: filter_activator_name (1)
Class: filter_activator_team (2)
Class: func_areaportalwindow (5)
Class: func_breakable (25)
Class: func_brush (20)
Class: func_button (9)
Class: func_buyzone (2)
Class: func_clip_vphysics (4)
Class: func_door (9)
Class: func_illusionary (6)
Class: func_physbox (7)
Class: func_rotating (10)
Class: func_smokevolume (1)
Class: func_tanktrain (1)
Class: func_tracktrain (2)
Class: game_player_equip (2)
Class: game_score (1)
Class: info_particle_system (39)
Class: info_player_counterterrorist (32)
Class: info_player_start (1)
Class: info_player_terrorist (32)
Class: info_target (14)
Class: info_teleport_destination (15)
Class: light (15)
Class: logic_case (18 )
Class: logic_relay (50)
Class: logic_timer (13)
Class: math_counter (13)
Class: path_track (95)
Class: phys_bone_follower (15)
Class: player (54)
Class: player_speedmod (1)
Class: point_servercommand (1)
Class: point_spotlight (24)
Class: point_template (57)
Class: point_tesla (5)
Class: predicted_viewmodel (108 )
Class: prop_dynamic (9)
Class: prop_dynamic_ornament (1)
Class: prop_physics (1)
Class: scene_manager (1)
Class: sky_camera (1)
Class: soundent (1)
Class: spotlight_end (24)
Class: trigger_hurt (20)
Class: trigger_multiple (18 )
Class: trigger_once (11)
Class: trigger_push (23)
Class: trigger_teleport (14)
Class: water_lod_control (1)
Class: weapon_ak47 (1)
Class: weapon_deagle (2)
Class: weapon_flashbang (10)
Class: weapon_glock (28 )
Class: weapon_hegrenade (10)
Class: weapon_knife (50)
Class: weapon_m249 (3)
Class: weapon_m4a1 (1)
Class: weapon_p90 (7)
Class: weapon_sg552 (1)
Class: weapon_usp (22)
Class: worldspawn (1)
Total 1195 entities (0 empty, 1037 edicts)

so, it seems that this extension doesn't really work.
Yes, the highest index is 1947, but there are a lot free indexes at the moment

Or, may be my calculation algorithm is wrong?

public OnEdictsThreshold(number) {

PrintToServer("OnEdictsThreshold");

new highindex = 0;
new count = 0;
if(number == 99) {
ServerCommand("report_entities");
for(new i = 0; i != 2048; i++) {
if(IsValidEntity(i)) {
count++;
highindex = i
}
}
PrintToServer("OnEdictsThreshold count %i highindex %i", count, highindex);

count = 0;
new ent;
while((ent = FindEntityByClassname(ent, "infodecal")) != -1)
{
count++;
}
PrintToServer("OnEdictsThreshold infodecal count %i", count);
}

return 1;
}

also I noticed, the at every first frame of a round server recreates all the entities, and than, during a few frames, the number of networked entities reduces 2-3 times.
Removing entities at the moment when I get this message "Warning: free edicts below threshold. 99 free edicts remaining" is useless, because the engine removes them only in the next frame (after server crash). Try to change the level makes no sense too. sourcemod blocks it and moves to the next frame. So if at the next frame the server is still alive (there are some indexes left), then I see a lot of such messages "[SM] Changed map to "
That is why sv_lowedict_action 4 doesn't work too.


So, if you see the message "Warning: free edicts below threshold. 1 free edicts remaining" then there is no way to prevent server crash.

psychonic
03-09-2015, 15:32
Try to change the level makes no sense too. sourcemod blocks it and moves to the next frame.
No part of SourceMod that I'm aware of blocks level change for any amount of time.

kadet.89
03-11-2015, 12:47
How to count the real number of existed entitis?

My today's result (ze_predator_ultimate_v2, third round) :
L 03/11/2015 - 15:43:33: World triggered "Round_Start"
L 03/11/2015 - 15:43:33: "Warning: free edicts below threshold. 99 free edicts remaining"
L 03/11/2015 - 15:43:33: OnEdictsThreshold count 985 highindex 1947


Should not count be (2048-99) = 1949?
Here is my algorithm:

for(new i = 0; i != 2047; i++) {
if(IsValidEntity(i)) {
count++;
highindex = i
}
}
Does that mean that "invalid entity" !== "nonexistent entity" ?

kadet.89
03-15-2015, 13:23
It seems PEntityOfEntIndex doesn't work properly, can somebody replace it with IsValidEntity ? I can't compile this extension with my sdk... it's too new
And add please some log messages for indexes > 1948

------------
Ok, if anybody can recompile this extension, just let me know

Kriax
05-15-2015, 13:47
it still works?

KyleS
05-15-2015, 14:24
it still works? On cstrike, yes.

Kriax
05-15-2015, 14:39
What does he do exactly?
Sorry, English is not my radius: /
Could you explain more easily?

gamemann
09-19-2015, 17:37
Here's an updated version of CEF for Linux. This broke in the last OrangeBox update (9-16-15).

Credits for the fix go to Botox.

Thanks.

MaloModo
10-07-2015, 16:21
Here's an updated version of CEF for Linux. This broke in the last OrangeBox update (9-16-15).

Credits for the fix go to Botox.

Thanks.

How is this working?

KyleS
10-07-2015, 17:37
How is this working? It may have been recompiled against the new SDK, that's it.

ijam_j
12-02-2015, 20:52
On cstrike, yes.

What about other games? Does Insurgency works? I hosts Insurgency dedicated server on windows. Can I use this?

eric0279
12-05-2015, 00:11
Hello,

work for csgo?

ph
12-15-2015, 17:39
Can someone compile a updated version for Windows TF2

couldbepurplecouldbepink
01-09-2016, 11:59
Can someone compile a updated version for Windows TF2
bump

RzGaming
01-10-2016, 06:06
is there a working version of this on Linux ? i dont see any snapshot

zeroibis
05-22-2016, 20:57
What would it take to get a windows build of this!?

NanoC
06-02-2016, 22:13
i don't have idea how to install CEF for windows haha

wwahgnerbp
11-07-2016, 06:46
If someone could compile it for CSGO would be interesting. I still can reproduce this error spawning a lot of models.

KyleS
11-13-2016, 13:05
If someone could compile it for CSGO would be interesting. I still can reproduce this error spawning a lot of models.
This is essentially built-in to CS:GO. The only difference this makes is on other SDK2013 and older games.

lamheocbvn
12-16-2016, 11:00
Did someone build for windows? :(

zeroibis
03-14-2017, 06:50
Did someone build for windows? :(

No...

geipoe
09-22-2017, 17:41
is this still working for the 1.8sm now? i'm tired of the "ED_Alloc: no free edicts" in my l4d2 server, if someone know, tell me please(sorry for my poor english).and can anyone tell me how to install it?thanks

Despirator
09-29-2017, 02:01
is this still working for the 1.8sm now? i'm tired of the "ED_Alloc: no free edicts" in my l4d2 server, if someone know, tell me please(sorry for my poor english).and can anyone tell me how to install it?thanks

Even if I do my own extension with aborting a new creation of edicts I still have this bug. So I decided that this type of extension doesn't help at all

geipoe
10-07-2017, 21:49
Even if I do my own extension with aborting a new creation of edicts I still have this bug. So I decided that this type of extension doesn't help at all

thanks for reply.it's a really high chance for map c6m1_riverbank on my server appear to crash witch that bug.it's almost no crash on other maps

enderandrew
07-16-2020, 02:39
My server is crashing with:

Engine error: ED_Alloc: no free edicts

Google is bringing me to this thread, but this plugin hasn't be compiled for Windows, nor against a recent SDK.

Is there any chance a kind soul would recompile this, or are there better options?

KyleS
07-17-2020, 18:53
My server is crashing with:

Engine error: ED_Alloc: no free edicts

Google is bringing me to this thread, but this plugin hasn't be compiled for Windows, nor against a recent SDK.

Is there any chance a kind soul would recompile this, or are there better options?
A recent SDK eh? It's great you're running on Windows, but which GAME are you running?! :bee:

enderandrew
07-17-2020, 20:01
A recent SDK eh? It's great you're running on Windows, but which GAME are you running?! :bee:

Sorry, TF2.

enderandrew
08-07-2020, 04:03
A recent SDK eh? It's great you're running on Windows, but which GAME are you running?! :bee:

I'm currently running a TF2 server on Windows and getting some crashes that I'm hoping this can help resolve.

That being said, I'm trying to migrate to a Linux server instead. Part of what is delaying me is that some of the extensions I'm using don't have Linux versions. I'm trying to compile these on my own and not having much success yet. I would create appreciate if someone could compile this extension against MM 1.10 and the current TF2 SDK for Windows and/or Linux.

PC Gamer
08-07-2020, 13:51
enderandrew... I've had success using the "[ANY] Security entity limit" plugin written by the talented Benoist3012 (link: https://forums.alliedmods.net/showthread.php?p=2316579).

I use lots of plugins and even with the plugin the server crashed a few times. As a result, I added a few lines of code that executes a config file when the number of edicts gets too high. In the exec file are commands to unload a couple of plugins to help reduce the number of edicts created.

edited portion of code:
if (iEntity >= 1950)
{
if (g_bLogActions && !g_bCleaningMode && iEntity < 2000)
{
LogMessage("[SEL]The server is close of the limit, cleanning mode enabled");
g_bCleaningMode = true;
PrintToServer("[SEL]Server is close to Entity limit. Cleaning mode enabled.");
ServerCommand("exec lagimprove.cfg");
PrintToServer("[SEL]Unloaded Random Bot Cosmetic and Weapon plugins.");
}

cfg/lagimprove.cfg
sm plugins unload givebotsweapons
sm plugins unload givebotscosmetics
sm_say Unloaded Random Bot Cosmetics and Weapons

Once I did that the crashes stopped completely. The plugin works well without modification but if you still get crashes consider modding the plugin as needed.

enderandrew
08-07-2020, 16:47
Thanks, I'm going to give that a try!

FroGeX
04-15-2021, 17:15
any chance make this for CSGO?

NOTORIOUS7302
09-02-2021, 14:13
Can anyone please tell me how to install this for CS: Source? I don't understand the install instructions which involves putting it into a CEF folder (which I don't have) and to pull a cef.vdf file into Metamod but there isn't one.

Iizuka07
12-30-2023, 12:03
Is this still active? If so, can anyone post a ready built extension for L4D2 and proper installation guide as I'm confused to where to put this. Thanks