Willkommen ~Gast!
Registrieren || Einloggen || Hilfe/FAQ || Staff
Probleme mit der Registrierung im Forum? Melde dich unter registerEin Bild.
Autor Beitrag
000
01.01.2006, 20:05
ovi



Ja, ich habe mal wieder ein Problem. Wenn ich die Map starte und ca. 30 Sekunden am laufen bin, stürzt das Spiel ab und ich lande auf dem Desktop mit der Fehlermeldung: "Ed_alloc: no free edicts". Ich hab mich jetzt mal schlau gemacht. Ich weiß, dass man, wenn man diesen fehler bekommt, zu viele Entitys hat. Allerdings sind in meiner Map insgesamt nur 700 Entitys. Bei einer anderen Map jedoch habe ich über 1000 Entitys und ich bekomme diese Fehlermeldung dort nicht.

So, ich hab jetzt mal ein paar Entitys reduziert und es klappt auch alles jetzt. Allerdings is meine Map noch lange nicht fertig, und wenn ich jetzt wirklich keine Entitys mehr einbauen könnte, war alles umsonst.

Also will ich euch jetzt fragen, woran es noch liegen kann, außer an zu vielen entitys, was ja eigentlich unlogisch ist, da ich auf anderen maps viel mehr als nur 700 Ents verwenden kann.

-- Ovi

--

zum Seitenanfang zum Seitenende Profil || Suche
001
01.01.2006, 20:12
Herr Freimann



tja? eigentlich liegt das maximum an ents noch unter 400. wie hast du das hinbekommen.. was sind das denn für entinities? gegroupte brushes oder wirklich viele einzelne? werd mal präziser hier^^

--

zum Seitenanfang zum Seitenende Profil || Suche
002
01.01.2006, 20:19
ovi



Ich glaube kaum, das es unter 400 liegt. Ich hatte diesen error noch nie und ich hab schon viele maps mit über 400 entitys gemacht. :P Das meiste sind ich würde mal sagen "func_door / func_door_rotating" und "light" ents dann noch sprites und so andere kleinigkeiten eben.

PS. Ich mache die map für den Halflife Mod "The Specialists"

--

zum Seitenanfang zum Seitenende Profil || Suche
003
01.01.2006, 22:23
Andy



http://www.thewall.de/forum/showtopic.php?threadid=30179
Da ist der Fehler erklärt.

edit: Wen du auf "Map" -> "Informationen anzeigen" bekommst du ein Fenster in dem die Anzahl der Entites stehen.

--

[ThW-Code] [es gibt eine editierfunktion!(dp)][Eisregen]
zensieren kann uebrigens nur ein staat, wir haben da noch probleme mit der anerkennung "dp"
Fr?her war alles nur gut heute ist alles besser doch manchmal w?re es besser wenn wieder alles nur gut w?re.


Dieser Beitrag wurde am 01.01.2006 um 22:27 von Andy3268 bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
004
01.01.2006, 23:43
HammerBlade



Das Problem bei diesem Problem ist, dass nicht nur die Entities zählen, die du in der Map verbaust sondern alles was eine edict verbraucht. Ein edict ist etwas das jedes Entity hat und worüber es in der Engine verwaltet wird. Zu den normalen Entities in der Map kommt dann nochmal grundsätzlich alles was temporär bzw. dynamisch ist oder sich bewegen kann, d.h.

- der Player
- die Waffen die der Spieler trägt
- rumfliegende/rumliegende Patronenhülsen
- teilweise die Projektile und Schüsse der Waffen (je nachdem wie die Waffe/der Schuss coding-technisch umgesetzt ist)
- Einschusslöcher (allgemein Decals jeder Art, dynamisch/statisch)
- Partikeleffekte (je nachdem kann hier jedes einzelne Partikel ein edict haben)
- ...

Die Engine hat einen festen Pool an edicts zu Verfügung von dem die Map alleine einen bestimmten Teil verbraucht, dazu kommen dann noch alle die nicht direkt von der Map abhängen.

Du siehst also das du nicht vollstänige Kontrolle über die Anzahl der verbrauchten edicts hast. Je nachem wie die Spieler die Map spielen kommst du einmal mit den edicts hin mal auch nicht.

Du könntest versuchen die Anzahl der freien edicts zusteigern in dem du die Anzahl gleichzeitiger Decals verringers. Testweise kannst du versuchen r_decals in der Console aus eine Wert < 50 zu setzten.

Wenn die Map immer nach 30sec mit dem Fehler abstürzt solltest du genauer ergründen warum das nicht sofort, sondern erst nach 30sec, passiert. Ich folgere daraus, dass irgendetwas in deiner Map kontinuiertlich Entities erzeugt bzw du selber durch dein rumlaufen.

--

"Mit C++ (noch besser mit C) kann man sich _sehr_ leicht in den Fuss schiessen." - theDon
Auspack und freu! - Auszug aus einer, aus dem japanischen übersetzten, Bedienugsanleitung für ein Spielzeugaquarium.
--
Photon Audio Player | Majestic42.net | How To Ask Questions The Smart Way

zum Seitenanfang zum Seitenende Profil || Suche
005
02.01.2006, 13:12
ovi



So, habe jetzt mal 2 bilder gemacht:

1. Das Sind die Infos von der ersten map, diese Läuft wunderbar, keine errors oder abstürze. Sie wurde sogar im internet schon mit mehr als 20 leute gleichzitig gespielt, also viele patronen hülsen und waffen. :P

2. So, das sind die Infos von der jetzigen map. Ich hab hinter Point / Solid Entites geschrieben, was dort vorher stand, wo die map noch nicht funktionierte. Wie man sieht, sind hier viel weniger entitys als in der anderen map. Trotzdem ist sie ständig abgestürzt. Egal in welchem Teil der map man war.

PS: Unter anderem habe ich eine Camera mit falschem Infotarget removed und ein Light, das in einer Wand steckte auch. Ich weiß zwar nicht ob des dewwegen abgestürzt ist, aber ich wollte das einfach mal erwähnen.

--


Dieser Beitrag wurde am 02.01.2006 um 13:13 von ovi bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
006
03.01.2006, 13:36
ovi



Kann es wohlmöglich auch an lichtschalter liegen, weil ich hab viele Lichter die man an und ausswitchen kann das wären ja dann mehrere dynamic entitys, oder?

--

zum Seitenanfang zum Seitenende Profil || Suche
007
03.01.2006, 14:27
HammerBlade



Lights dürften hier nicht als dynamsich gelten, da ihre Auswirkung auf die Map in der Lightmap landet. Ich denke nicht das es etwas bringt die schaltbaren Lights unschaltbar zu machen, aber versuchen kannst du es natürlich.

--

"Mit C++ (noch besser mit C) kann man sich _sehr_ leicht in den Fuss schiessen." - theDon
Auspack und freu! - Auszug aus einer, aus dem japanischen übersetzten, Bedienugsanleitung für ein Spielzeugaquarium.
--
Photon Audio Player | Majestic42.net | How To Ask Questions The Smart Way


Dieser Beitrag wurde am 03.01.2006 um 14:28 von HammerBlade bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche
008
25.09.2008, 18:49
Silencer Einundneunzig



*buddel*
Habe jetzt extra hiernach gesucht, um die glorreiche Nachricht zu verkünden:
Vor 3 Jahren hat Valve einen Befehl hinzugefügt um mehr Edicts freizuschalten.
Valve war aber so intelligent, keinem davon zu erzählen.
Alle die ihr nun dies lest, werdet Zeugen num_edicts.
- Rechtsklick aufs Steam Icon
- My Games
- Rechtsklick auf ein Spiel
- Set launch properties
- "-num_edicts 2047" ohne Anführungszeichen reinschreiben.
- Ok.
Resultat: Gut 1000 Edicts (Entity Slots) mehr FÜR UMSONST.

Ich kann euch guten Gewissens sagen, dass diese Befehlszeile so gut wie NIEMAND kennt.
Und ich bin nur durch reinen Zufall in den AMXX Foren da dran gekommen.
In den Sven-Coop Foren sorgt es bereits für Begeisterung. Die ersten haben
begonnen, alte High Fidelity Maps wieder auszubuddeln und zu Ende zu bauen.

Kombiniert mit der maxplayers 32 Methode, wird man so gut wie nie wieder
den No Free Edicts Fehler bekommen. Ja! Ihr dürft mir jetzt die Füße küssen.
;)

Einziger Nachteil ist, dass es eben von den Startoptionen der Server abhängt,
ob das ganze aktiviert ist oder nicht. Wenn ihr also eine HiFi Map rausbringt,
bei jeder Gelegenheit diese Befehlszeile erwähnen!!

--

666 BPM


Dieser Beitrag wurde am 25.09.2008 um 18:53 von Silencer Einundneunzig bearbeitet.
zum Seitenanfang zum Seitenende Profil || Suche