Eo/Entity limit: Difference between revisions
No edit summary |
m (Multipage removal) |
||
(5 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
{{ | {{LanguageBar|title = Limo Estaĵa}} | ||
{{finishtranslation}} | {{finishtranslation}} | ||
Formito el rezonoj de memorasigno, estas limigo al kvantito de | Formito el rezonoj de memorasigno, estas limigo al kvantito de {{L|entity|estaĵoj}} ke povate estrebliĝi de Source. | ||
The combined size (in bytes) of a map's entity data should also be considered, even if the number of entities is within safe limits. Multaj kvantitoj da [[Source BSP File Format#Entity|entdata]] povas noteble longtempe ŝutiĝi el servilo al malservilo. Tio eble kaŭzi erarhaltojn. | The combined size (in bytes) of a map's entity data should also be considered, even if the number of entities is within safe limits. Multaj kvantitoj da [[Source BSP File Format#Entity|entdata]] povas noteble longtempe ŝutiĝi el servilo al malservilo. Tio eble kaŭzi erarhaltojn. | ||
Line 7: | Line 8: | ||
{{tip|Kiam kreas tre grandajn aŭ artecajn mapojn, rememoru ke pli estaĵoj ekzistos dum agtempo ol dum komputigaĵtempo. Aĵoj kvazaŭ vundiloj portis de ludantoj, elĵetoj kaj mortaj dikkorpoj, ĉiuj ankaŭ estas estaĵoj. Se vi vidi "no free edicts" erarojn vi bezonu komenci malkreigadon!}} | {{tip|Kiam kreas tre grandajn aŭ artecajn mapojn, rememoru ke pli estaĵoj ekzistos dum agtempo ol dum komputigaĵtempo. Aĵoj kvazaŭ vundiloj portis de ludantoj, elĵetoj kaj mortaj dikkorpoj, ĉiuj ankaŭ estas estaĵoj. Se vi vidi "no free edicts" erarojn vi bezonu komenci malkreigadon!}} | ||
== {{ | == {{gldsrc|4}} limoj == | ||
{{stub}} | {{stub}} | ||
The default edict limit is 900, but this can be raised to 2048 by editing the mod's | The default edict limit is 900, but this can be raised to 2048 by editing the mod's {{L|liblist.gam}} to include {{code|edicts "2048"}}.<br>This can safely be done for singleplayer mods, but should not be relied upon for multiplayer maps for existing games.{{clarify}} | ||
In {{svencoop|4.1}}, the limit has been raised to 8192. | In {{svencoop|4.1}}, the limit has been raised to 8192. | ||
Line 15: | Line 16: | ||
== {{source|4}} limoj == | == {{source|4}} limoj == | ||
Maksimumo de 4096 estaĵoj povas ekzisti unuope. Tiu sumo disiĝos al du grupoj de 2048: | Maksimumo de 4096 estaĵoj povas ekzisti unuope. Tiu sumo disiĝos al du grupoj de 2048: | ||
# Non-networked entities, which exist only on the client or server (e.g. death ragdolls on client, | # Non-networked entities, which exist only on the client or server (e.g. death ragdolls on client, {{L|CLogicalEntity|logicals}} on server). | ||
# Estaĵoj kun asociaj | # Estaĵoj kun asociaj {{L|edict}}-oj, kiuj povas transiri la dividon de kliento/servilo. | ||
* En {{gmod|2}}, povas ekzisti maksimume 16384 estaĵoj, disiĝos al du grupoj de 8192. | * En {{gmod|2}}, povas ekzisti maksimume 16384 estaĵoj, disiĝos al du grupoj de 8192. | ||
Line 29: | Line 30: | ||
The two entity lists are created by <code>CBaseEntityList::CBaseEntityList()</code> using <code>NUM_ENT_ENTRIES</code> and <code>MAX_EDICTS</code>. Neither of those values can be changed without breaking compatibility with the engine. | The two entity lists are created by <code>CBaseEntityList::CBaseEntityList()</code> using <code>NUM_ENT_ENTRIES</code> and <code>MAX_EDICTS</code>. Neither of those values can be changed without breaking compatibility with the engine. | ||
{{tip| | {{tip|{{L|Temporary Entity|Temporary entities}} and {{L|prop_static|static}}, <code>{{L|Env_sprite_clientside|sprite_clientside}}</code>, or {{L|prop_detail|detail}} props do not count toward either limit.}} | ||
{{tip|If you're creating lots of individual objects all the time, consider rolling them all into a single manager entity.}} | {{tip|If you're creating lots of individual objects all the time, consider rolling them all into a single manager entity.}} | ||
Line 35: | Line 36: | ||
{{tip|In-game, use console commands like <code>report_entities</code> and <code>cl_showents</code> to get an idea of how many entities are present at that current state.}} | {{tip|In-game, use console commands like <code>report_entities</code> and <code>cl_showents</code> to get an idea of how many entities are present at that current state.}} | ||
{{tip|Prop entities that use a model with {{ent|$collisionjoints}} will generate one {{ent|phys_bone_follower}} for every convex piece of their | {{tip|Prop entities that use a model with {{ent|$collisionjoints}} will generate one {{ent|phys_bone_follower}} for every convex piece of their {{L|collision model}}. These can quickly eat up the edict count! Enabling the "Disable Bone Followers" keyvalue on the prop will disable bone followers, although the prop will no longer have a functioning collision model, and the model will not be able to {{L|ragdoll}}.}} | ||
== VMF limoj == | == VMF limoj == | ||
Hammer itself has no entity limit, but | Hammer itself has no entity limit, but {{L|VBSP}}'s is 8192 (16384 in {{as|2}}, 2048 in {{csgo|2}}). {{note|This is a soft limit; a modded {{L|VBSP}} is capable of adding as many entities as memory allows.}} | ||
This is double the combined total accepted by the engine, which may be because it at first treats | This is double the combined total accepted by the engine, which may be because it at first treats {{L|internal entity|internal entities}} (such as {{ent|prop_static}} and {{ent|env_cubemap}}) like normal entities, or perhaps because it generates a lot of {{L|detail props}}. | ||
VBSP also recommends an [[Source BSP File Format#Entity|entdata]] size limit of 384KB, but this is in no way enforced. | VBSP also recommends an [[Source BSP File Format#Entity|entdata]] size limit of 384KB, but this is in no way enforced. | ||
== {{source2|4}} limoj == | == {{source2|4}} limoj == | ||
In {{source2|4}}, specifically {{ | In {{source2|4}}, specifically {{S&box|4}}, networked entity limit is 16384. | ||
Ne ekzistas apere limo por mapkomputigaĵoj aŭ ĝi ligis retan estaĵan limon. | Ne ekzistas apere limo por mapkomputigaĵoj aŭ ĝi ligis retan estaĵan limon. | ||
Line 54: | Line 55: | ||
== Eksteraj ligiloj == | == Eksteraj ligiloj == | ||
* [https://rafuron.wordpress.com/category/mapping-tricks/ mapping tricks to get around the Entity limit] | * [https://rafuron.wordpress.com/category/mapping-tricks/ mapping tricks to get around the Entity limit] | ||
{{ACategory|GoldSrc}} | |||
{{ACategory|Source}} | |||
{{ACategory|Source 2}} | |||
{{ACategory|Level Design}} | |||
{{ACategory|Programming}} |
Latest revision as of 06:24, 12 July 2024

You can help by finishing the translation.
If this page cannot be translated for some reason, or is left untranslated for an extended period of time after this notice is posted, the page should be requested to be deleted.
Also, please make sure the article complies with the alternate languages guide.
Formito el rezonoj de memorasigno, estas limigo al kvantito de estaĵoj ke povate estrebliĝi de Source.
The combined size (in bytes) of a map's entity data should also be considered, even if the number of entities is within safe limits. Multaj kvantitoj da entdata povas noteble longtempe ŝutiĝi el servilo al malservilo. Tio eble kaŭzi erarhaltojn.

GoldSrc limoj
The default edict limit is 900, but this can be raised to 2048 by editing the mod's liblist.gam to include edicts "2048".
This can safely be done for singleplayer mods, but should not be relied upon for multiplayer maps for existing games.[Klarigu]
In Sven Co-op, the limit has been raised to 8192.
Source limoj
Maksimumo de 4096 estaĵoj povas ekzisti unuope. Tiu sumo disiĝos al du grupoj de 2048:
- Non-networked entities, which exist only on the client or server (e.g. death ragdolls on client, logicals on server).
- Estaĵoj kun asociaj edict -oj, kiuj povas transiri la dividon de kliento/servilo.
- En
Garry's Mod, povas ekzisti maksimume 16384 estaĵoj, disiĝos al du grupoj de 8192.
- En
Portal 2, povas ekzisti maksimume 8192 estaĵoj.
- En
Counter-Strike: Global Offensive kaj
Teama Fortreso 2, la defaŭlta limo estas 4096.
If the game tries to assign a 2049th edict it will exit with an error message, but if it tries to create a 2049th non-networked entity it will merely refuse and print a warning to the console. The logic behind this may be that an entity spawned dynamically (i.e. not present in the map) but not assigned an edict probably isn't too important.
The two entity lists are created by CBaseEntityList::CBaseEntityList()
using NUM_ENT_ENTRIES
and MAX_EDICTS
. Neither of those values can be changed without breaking compatibility with the engine.

sprite_clientside
, or detail props do not count toward either limit.

report_entities
and cl_showents
to get an idea of how many entities are present at that current state.
VMF limoj
Hammer itself has no entity limit, but VBSP 's is 8192 (16384 in Eksterterula Svarmo, 2048 in
Counter-Strike: Global Offensive).

This is double the combined total accepted by the engine, which may be because it at first treats internal entities (such as prop_static and env_cubemap) like normal entities, or perhaps because it generates a lot of detail props .
VBSP also recommends an entdata size limit of 384KB, but this is in no way enforced.
Source 2 limoj
In Source 2, specifically
S&box, networked entity limit is 16384.
Ne ekzistas apere limo por mapkomputigaĵoj aŭ ĝi ligis retan estaĵan limon.