Hello. So I want to be able to edit the thermal detonator explosion in PE. I have PE working using method three, but the problem is it shows up as squares. What would I need to munge and where would I put the munged assets to get it to show up correctly? Thanks in advance!
[color=#FFBF40]psych0fred[/color] wrote:If you use the particle editor and the particle effects you open look like colored squares then the program is not finding the munged assets it needs to display them.
To fix this you need to copy the munged assets to a location the particle editor can find. Internally we have everything in common\munged but I don't think I gave you that with the mod tools, so you would need to recreate the munged assets by copying all the files into your mod's project common\effects folder and munging them from there. I haven't tried this, and you should only do it to restore the munged assets you need to run all the effects with the particle editor because if you do this in a real project it will fatten the project unnecessarily. All you are trying to do is copy the files need to create the munged files you need so they can be copied into a location such as ParticleEditor\Munged where the particleeditor is looking for them.
You can get the munged effects from Method #2 mentioned earlier in this post; just extract the munged folder to the same location as the Particle Editor executable.
Re: Particle editor
Posted: Fri Dec 07, 2012 7:58 am
by Loopy53
Okay, so I have the munged folder in bf2_modtools\toolsfl\bin, and PE is still not showing the effects correctly. What does the munged folder have to be called for PE to show the effects correctly?
Re: Particle editor
Posted: Fri Dec 07, 2012 8:59 am
by AceMastermind
The folder is named 'munged' and should be located in the same location as the exe. This folder contains munged but not packed files that the exe is looking for. The exe will actually create a Munged folder for you if it doesn't exist, you just need to fill it with the munged files. Does every effect you view still look blocky, or is it just that one thermal detonator explosion effect? I don't use the exe from method 3, all I know is that it launches and loads effects.
EDIT
Yep, the exe from psych0fred can't seem to find or isn't looking for the munged files no matter where you run the exe from. You'll just have to make due with the blocky effects inside the editor then test frequently ingame. I'll make a note of this in the FAQ thread.
Here's every string from the exe, there may be a hint in there somewhere as to a specific location, don't know.
file
chunk
Child
Munged
texturemunge -platform pc -inputfile %s -4bit -maps 1 -outputdir %s\ -sourcedir %s -checkdate
texture
argbuf
cDriveNameBuffer
cDirNameBuffer
cFileNameBuffer
cExtNameBuffer
cSourceDir
cOutputPath
cPath
start
PblTimeStamp not initialized.
c:\frontline\pebblefl\common\pbltimebase.h
Temp
Data in %s is not a binary UCF file.
c:\frontline\toolsfl\particleeditor\dxparticles.cpp
tmpFilename
camMatrix
Trying to remove invalid node.
c:\frontline\pebblefl\common\pbllist.h
Trying to remove node not in this list.
Trying to remove node when count <= 0.
Hue:
Sat:
Value:
Red:
Blue:
Green:
Targa Files (*.TGA)
C:\frontline\data\common\effects\flare0.tga
bHack
None
Error
Can't remove last State, set it to None if you dont want it
Stage %i
Emitter Lifetime: %.1f
Total Color LifeTime: %.1f
Total Rot LifeTime: %.1f
Total Size LifeTime: %.1f
bDontCare
Scale:
PerformanceTimer
strlen( aName ) < MAX_NAME_LENGTH
c:\frontline\frontline\source\performancetimer.cpp
FrameRate
gamefont_medium
0.00 fps
gamefont_small
30FPS
15FPS
%6.2f fps
***
systemfont
%5.1f
%s%c %d %s%s
strWarning
strPercent
Adding to a full pool.
c:\frontline\frontline\source\listpool.h
Removing from illegal index.
Getting from illegal index.
Destructing list which is not empty.
Trying to remove when count <= 0.
Trying to insert with invalid node.
Trying to insert one node into two lists.
Trying to insert null object.
Destructing node which is still in a list.
child
randGen
Releaseing a dead object.
c:\frontline\pebblefl\common\pblref.h
Adding a reference to a dead object.
aSize <= sizeof(ParticleEmitter)
c:\frontline\frontline\source\particleemitter.h
matrix
tmpMatrix
geometry type not PT_EMITTER
c:\frontline\frontline\source\particleemitter.cpp
aLod
aFadVal
bClipped
Failure
c:\frontline\frontline\source\memorypool.h
aSize <= sizeof(ParticleEmitterObject)
c:\frontline\frontline\source\particleemitterobject.h
velocity
aSize <= sizeof(ParticleEmitterInfoData)
c:\frontline\frontline\source\particleemitterinfo.h
pos2
extraBuffer
WhiteSmoke
mType is PT_EMITTER, it shouldn't call this
c:\frontline\frontline\source\particlegeometry.cpp
particleColor
fMin <= fMax
c:\frontline\pebblefl\common\pblmath.h
direction
position
bValue
iValue
fValue
sValue
Must provide a soldier model for this LOD
c:\frontline\frontline\source\frontlinelod.cpp
No Models sent in to RedLodData
Heap alignment must be 4 bytes or greater and a power of two
c:\frontline\redenginefl\memory\redmemory.cpp
setting an empty heap as the default heap
attempted to allocate from a frozen heap
failed to allocate block - free list is empty
attempted to freeze a frozen heap
attempted to thaw a non-frozen heap
Element 0x%0x enabled when added
Cannot create Direct3D interface!
c:\frontline\redenginefl\graphics\pc\pcredrenderer.cpp
Cannot create Direct3D device!
Scene
RedRenderer::Flush
Shadows
RedRenderer::SetDynamicLightingState : WARNING: ambient light factor <= 0.0f
RedRenderer::SetDynamicLightingState : WARNING: directional light factor <= 0.0f
RedRenderer::SetLightingState : WARNING point light factor <= 0.0f
RedRenderer::SetLightingState : WARNING: point light factor <= 0.0f
RedRenderer::SetLightingState : ERROR: point light 1 set without point light 0
RedRenderer::SetLightingState : WARNING Spot light factor <= 0.0f
RedRenderer::SetLightingState : WARNING: spot light factor <= 0.0f
RedRenderer::SetLightingState : ERROR: spot light 1 set without spot light 0
RedRenderer: out of space for bone matrices!
Error setting render state!
Error setting texture stage state!
Render item array not large enough!
Error setting stream source
pcRedShader: invalid fragment type
xboxRedShader: transform fragment id out of range
xboxRedShader: lighting fragment id out of range
RedRenderer::internalStateStackPush only supports 2 frames
RedRenderer::internalStateStackPop without matching internalStateStackPush
Attempting to get non-existant view type
Hash table size must be power of two, but found: %d.
c:\frontline\pebblefl\common\pblhashtable.cpp
Hash ID cannot be 0.
Trying to store duplicate ID.
Trying to destruct an open file.
c:\frontline\pebblefl\pc\pcpblfile.cpp
Can only align files to power of two alignment.
Unknown texture type!
c:\frontline\redenginefl\graphics\pc\pcredtexture.cpp
Texture [%s] Hash 0x%08x
pcRedTexture: invalid mode flags
pcRedTexture: multiple matching mode flags
d3ddevice->CreateTexture() failed
pcRedTexture: no texture matches texture mode
Reading beyond end of chunk.
c:\frontline\pebblefl\common\pblchunk.cpp
RedCamera: too many xz-planes
particle type not known
c:\frontline\redenginefl\application\pc\pcredparticle.cpp
Found parent(%s), but it isn't a container
c:\frontline\redenginefl\interface\redinterfaceelement.cpp
Uhoh? Could not find parent %s
texNameChunk.GetId() == _ID32('NAME')
texChunk.GetId() == _ID32('tex_')
RedVariableWidthFont::Read texture %s [%08x] not found
RedVariableWidthFont::Read glyph texture index out of range
RedVariableWidthFont::Read out of order glyphs
RedVariableWidthFont::GetTexture out of range texture index
mNumElements < kMAX_GROUPS_PER_SCREEN
c:\frontline\redenginefl\interface\redifscreen.cpp
c:\frontline\redenginefl\util\redcommandconsole.cpp
atlTraceUI
\%s\
Press Enter to show more Commands
Invalid Directory Path
Invalid Command/Directory
Commands for %s Directory
--------------
%s = %c
%s = %i
%s = %f
%s = %s
Unknown Var Type
This is a test of the emergency broadcast system
aLodData
c:\frontline\redenginefl\util\redsceneobject.cpp
Unrecognized Command
YO Biznatch, Wazzzup?
Retrieving LOD hint that has not been set up!
c:\frontline\redenginefl\util\redlodmanager.cpp
Object Cost Higher than Hint allows for!
aIndex <= mCount
c:\frontline\pebblefl\common\pblheap.h
mCount < mMaxCount
aKey < MaxValue()
pcRedShader::_Register name collision '%08x'
c:\frontline\redenginefl\graphics\pc\pcredshader.cpp
pcRedShader [%s] Hash 0x%08x
Error: pcRedShader 0x%08x not found
pcRedShaderDef: invalid pipeline index
pcRedShaderDef: invalid num passes
pcRedShaderDef: too many passes in pipeline
Error creating index buffer!
c:\frontline\redenginefl\graphics\pc\pcredindexbuffer.cpp
Index Buffer Memory
Direct3D
Index buffer already locked!
Locking more indices than were allocated for the index buffer!
Not enough space available in index buffer!
Index buffer lock failed!
Index buffer lock returned NULL pointer!
Error unlocking index buffer!
Error creating vertex buffer!
c:\frontline\redenginefl\graphics\pc\pcredvertexbuffer.cpp
Vertex Buffer Memory
Vertex buffer already locked!
Locking more vertices than were allocated for the vertex buffer!
Not enough space available in vertex buffer!
Vertex buffer lock failed!
Vertex buffer lock returned NULL pointer!
Error unlocking vertex buffer!
pD3D is NULL
c:\frontline\redenginefl\graphics\pc\pcreddeviceenumerator.cpp
new failed
pcRedVertexShader: invalid data length
c:\frontline\redenginefl\graphics\pc\pcredvertexshader.cpp
%.2f
c:\frontline\redenginefl\util\redspace.cpp
RedSpace2::Init: too many levels
RedSpace2::Init: Non-power of two passed as buffer size.
Sphere Buffer already allocated.
Item Buffer already allocated.
RedSpace2::Add: sphere is too big, adding to largest level anyway
RedSpace2::Add: Buffer overflow.
RedSpace2::Remove invalid radius
RedSpace2 -> Objects Radius has changed!!
RedSpace2::CollectSphere: Too many results.
RedSpace2::CollectPoint: Too many results.
pcRedShaderDef [%s] Hash 0x%08x
Error: pcRedShaderDef 0x%08x not found
ShaderDef index out of bounds!
c:\frontline\redenginefl\graphics\pc\shaders\pcnormalshader.cpp
pcRedShaderDef: pass out of range
c:\frontline\redenginefl\graphics\pc\pcredshader.h
Error creating pixel shader!
c:\frontline\redenginefl\graphics\pc\pcredpixelshader.cpp
RedShadingState: IntParam(%08x) does not exist
c:\frontline\redenginefl\graphics\redshadingstate.cpp
RedShadingState: FloatParam(%08x) does not exist
RedShadingState: ColorParam(%08x) does not exist
RedShadingState: VectorParam(%08x) does not exist
RedShadingState: TextureTransformParam(%08x) does not exist
RedShadingState: MatrixParam(%08x) does not exist
RedShadingState: PtrParam(%08x) does not exist
RedShadingState too many params
RedShadingState: must call BindToModel before CreateShadingState!
pMatrix != NULL
c:\frontline\redenginefl\graphics\redmodel.cpp
RedPose must be bound to skeleton before GetBoneMatrix!
c:\frontline\redenginefl\graphics\redpose.h
Bone Not Found in Skeleton.
FIXME: Duplicate model name exists in another level file
RedModel::Read already loaded?
RedModel::Read : invalid _iNumSegments
Model [%s] Hash 0x%08x
RedModel::Read : Too many segments or no INFO block?
RedModel::Read : Segments with material name [%08x] have conflicting render types
RedModel::Read : Too few segments
Model has shadow data
pcRedStencilShadow: invalid number of indices
c:\frontline\redenginefl\graphics\pc\pcredstencilshadow.cpp
shadow edge visibility wierdness
shadow volume reallocated silhouette
pcStencilShadowSegment: invalid PrimitiveType
pcStencilShadowSegment: invalid NumPrimitives
pcStencilShadowSegment: invalid NumVertices
pcRedStencilShadow: expected compressed vertices
pcRedStencilShadow: multiple uncompressed shadow data blocks
Skeleton [%s] Hash 0x%08x with %d bones
Found skeleton, but it has too many bones (>64).
c:\frontline\redenginefl\graphics\redskeleton.cpp
Found skeleton, but it has no INFO section.
Skeleton node: [%s]
Skeleton is not compact.
RedPose must be bound to skeleton before GetSkinMatrices!
c:\frontline\redenginefl\graphics\redpose.cpp
pcShaderSegment: invalid PrimitiveType
c:\frontline\redenginefl\graphics\pc\pcredsegment.cpp
pcShaderSegment: invalid NumPrimitives
pcShaderSegment: invalid NumVertices
Model has material [%s] Hash 0x%08x
Model has render type [%s] Hash 0x%08x
Model has texture[%d] = "%s" Hash 0x%08x
ERROR: Model has out of range texture index [%d]!
pcRedSegment: invalid geometry mode flags
pcRedSegment: multiple matching mode flags found
pcRedSegment: no vertices matching geometry mode found
Segment has no geometry
Segment has no vertices
Unskinned segment with bone index map
Segment num primitives does not match num vertices/indices
pcShaderSegment: no shader for rendertype %08x
pcShaderSegment: no normal shader [%08x]
Invalid number of vertices specified!
c:\frontline\redenginefl\graphics\pc\pcredprimitive.cpp
pcRedPrimitive: invalid primCount
Primitive as no vertex buffer!
Error setting index buffer!
Error drawing indexed primitive!
Error drawing primitive!
Software\Microsoft\Direct3D
DisableMMX
GenuineIntel
DisablePSGP
DisableD3DXPSGP
UnknownVendr
AuthenticAMD
memory allocation error: block too big
file `...%.99s'
file `%.99s'
string "
..."
string "%.99s"
stack overflow
line
call
return
_ERRORMESSAGE
(stdin)
unable to recover; exiting
%.4g
index
gettable
settable
getglobal
setglobal
concat
function
string size overflow
undefined operation
`for' step must be a number
`for' limit must be a number
`for' initial value must be a number
`for' index must be a number
`for' table must be a table
perform arithmetic on
local
value for `lua_getinfo' is not a function
main
global
tag-method
field
attempt to %.30s a %.10s value
attempt to compare %.10s with %.10s
tag table overflow
userdata
number
string
table
attempt to %.30s %.20s `%.40s' (a %.10s value)
attempt to compare two %.10s values
tag %d was not created by `newtag'
%d is not a valid tag
event `%.50s' is deprecated
event `gc' for tables is deprecated
`%.50s' is not a valid event name
with default tag
cannot change `%.20s' tag method for type `%.20s'%.20s
tag method must be a function (or nil)
no value
invalid tag for a userdata (%d)
reference table overflow
cannot change the tag of a %.20s
`%.20s' expected (to close `%.20s' at line %d)
<eof> expected
<expression> expected
constant table overflow
cannot access a variable in outer scope
<name> expected
<statement> expected
`%.20s' expected
cannot access upvalue in main
upvalue must be global or local to immediately outer scope
upvalues
function arguments expected
invalid constructor syntax
elements in a table constructor
(step)
local variables
<name> or `[' expected
`item groups' in a list initializer
`in' expected
`=' or `,' expected
(limit)
(table)
syntax error
variables in a multiple assignment
no loop to break
self
<name> or `...' expected
parameters
`%.99s' apparently contains more than one chunk
unexpected end of file in `%.99s'
bad code in `%.99s'
`%.99s' too new:
read version %d.%d; expected at most %d.%d
`%.99s' too old:
read version %d.%d; expected at least %d.%d
sizeof(int)
sizeof(size_t)
sizeof(Instruction)
SIZE_INSTRUCTION
SIZE_OP
SIZE_B
sizeof(Number)
unknown number format in `%.99s':
read %.4g; expected %.4g
bad signature in `%.99s'
virtual machine mismatch in `%.99s':
%.20s is %d but read %d
table index is nil
invalid key for `next'
table overflow
function or expression too complex
control structure too long
code size overflow
line info overflow
break
else
elseif
repeat
then
until
while
<eof>
too many %.50s (limit=%d)
%.99s;
last token read: `%.30s' at line %d in %.80s
invalid control char
ambiguous syntax (decimal point x string concatenation)
malformed number
unfinished long string
unexpected `$' (pragmas are no longer supported)
lines in a chunk
unfinished string
escape sequence too large
AtlDebugAllocator_FileMappingNameStatic3
%s_%0x
AtlTraceModuleManager_ProcessAddedStatic3
pModule != 0
AtlDebugAPI.cpp
pProcess != 0
false
pCategory != 0
%s(%d) :
%S:
%S(%d) :
%s:
pProcessInfo != 0
pAllocator->m_bSnapshot
pModuleInfo != 0
pCategoryInfo != 0
ppCategory && pfnCrtDbgReport
pProcess
f:\vs70builds\9466\vc\MFCATL\ship\atlmfc\include\atlsimpcoll.h
hHeap != 0
f:\vs70builds\9466\vc\MFCATL\ship\atlmfc\include\atlmem.h
bSuccess
pStringMgr == 0
f:\vs70builds\9466\vc\MFCATL\ship\atlmfc\include\atlsimpstr.h
pData->pStringMgr == this
f:\vs70builds\9466\vc\MFCATL\ship\atlmfc\include\atlstr.h
ERROR : Unable to initialize critical section in CAtlBaseModule
atlbase.cpp
ERROR : Unable to lock critical section in CAtlBaseModule
ppUnk != 0
f:\vs70builds\9466\vc\MFCATL\ship\atlmfc\include\atlbase.inl
pComModule != 0
ERROR : Unable to lock critical section in AtlComModuleGetClassObject
pEntries->pFunc == ((ATL::_ATL_CREATORARGFUNC*)1)
!bBlind
pData != 0 && pObject != 0
ERROR : Unable to lock critical section in AtlWinModuleAddCreateWndData
ERROR : Unable to lock critical section in AtlWinModuleExtractCreateWndData
ERROR : Unable to initialize critical section in AtlWinModuleInit
ERROR : Unable to lock critical section in AtlModuleAddTermFunc
p==0
f:\vs70builds\9466\vc\MFCATL\ship\atlmfc\include\atlcomcli.h
p!=0
ERROR : Unable to initialize critical section in CAtlComModule
_CrtDbgReport: String too long or IO Error
Assertion failed:
Assertion failed!
%s(%d) : %s
szUserMessage != NULL
<program name unknown>
For information on how your program can cause an assertion
failure, see the Visual C++ documentation on asserts.
Expression:
Line:
File:
Module:
Debug %s!
Program: %s%s%s%s%s%s%s%s%s%s%s
(Press Retry to debug the application)
Microsoft Visual C++ Debug Library
string != NULL
fgets.c
str != NULL
file != NULL
fopen.c
*file != _T('\0')
mode != NULL
*mode != _T('\0')
sscanf.c
format != NULL
fclose.c
onexit.c
Free
Ignore
Client
_CrtCheckMemory()
dbgheap.c
Client hook allocation failure at file %hs line %d.
Client hook allocation failure.
Invalid allocation size: %Iu bytes.
Error: memory allocation: bad memory block type.
Client hook re-allocation failure at file %hs line %d.
Client hook re-allocation failure.
Allocation too large or negative: %Iu bytes.
The Block at 0x%p was allocated by aligned routines, use _aligned_realloc()
_CrtIsValidHeapPointer(pUserData)
pOldBlock->nLine == IGNORE_LINE && pOldBlock->lRequest == IGNORE_REQ
fRealloc || (!fRealloc && pNewBlock == pOldBlock)
_pLastBlock == pOldBlock
_pFirstBlock == pOldBlock
The Block at 0x%p was allocated by aligned routines, use _aligned_free()
Client hook free failure.
_BLOCK_TYPE_IS_VALID(pHead->nBlockUse)
DAMAGE: before %hs block (#%d) at 0x%p.
("alignment must be a power of 2",0)
("offset must be within size", 0)
The block at 0x%p was not allocated by _aligned routines, use realloc()
Damage before 0x%p which was allocated by aligned routine
The block at 0x%p was not allocated by _aligned routines, use free()
vfprintf.c
fprintf.c
COMSPEC
*command != _T('\0')
system.c
command.com
cmd.exe
sprintf.c
f:\vs70builds\9466\vc\crtbld\crt\src\sprintf.c
vsprintf.c
ungetc.c
stream != NULL
fgetc.c
_file.c
mscoree.dll
CorExitProcess
strlwr.c
f:\vs70builds\9466\vc\crtbld\crt\src\vsprintf.c
f:\vs70builds\9466\vc\crtbld\crt\src\vswprint.c
f:\vs70builds\9466\vc\crtbld\crt\src\swprintf.c
KERNEL32
IsProcessorFeaturePresent
e+000
Stack pointer corruption
Cast to smaller type causing loss of data
Stack memory corruption
Local variable used before initialization
The value of ESP was not properly saved across a function call. This is usually a result of calling a function declared with one calling convention with a function pointer declared with a different calling convention.
A cast to a smaller data type has caused a loss of data. If this was intentional, you should mask the source of the cast with the appropriate bitmask. For example:
char c = (i & 0xFF);
Changing the code in this way will not affect the quality of the resulting optimized code.
Stack memory was corrupted
A local variable was used before it was initialized
Unknown Runtime Check Error
The value of ESP was not properly saved across a function call. This is usually a result of calling a function declared with one calling convention with a function pointer declared with a different calling convention.
i386\chkesp.c
Run-Time Check Failure #%d - %s
Invalid pointer was assigned at
File:
Stack around the variable '
' is being used without being defined.
A variable is being used without being defined.
Kernel32.dll
IsDebuggerPresent
GetUserObjectInformationA
filename != NULL
MessageBoxA
GetActiveWindow
GetLastActivePopup
GetProcessWindowStation
_filbuf.c
_open.c
stream.c
input.c
_freebuf.c
(unsigned)(c + 1) <= 256
isctype.c
_sftbuf.c
flag == 0 || flag == 1
ch != _T('\0')
output.c
*argv != NULL
PATH
spawnvpe.c
spawnve.c
(null)
(null)
*filename != _T('\0')
argv != NULL
**argv != _T('\0')
.cmd
.bat
.exe
.com
_flsbuf.c
("inconsistent IOB fields", stream->_ptr - stream->_base >= 0)
log10
sinh
cosh
tanh
asin
acos
atan
atan2
sqrt
ceil
floor
fabs
modf
ldexp
_cabs
_hypot
fmod
frexp
_logb
_nextafter
stdenvp.c
stdargv.c
a_env.c
ioinit.c
R6002
- floating point not loaded
R6008
- not enough space for arguments
R6009
- not enough space for environment
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
R6016
- not enough space for thread data
R6017
- unexpected multithread lock error
R6018
- unexpected heap error
R6019
- unable to open console device
R6024
- not enough space for _onexit/atexit table
R6025
- pure virtual function call
R6026
- not enough space for stdio initialization
R6027
- not enough space for lowio initialization
R6028
- unable to initialize heap
DOMAIN error
SING error
TLOSS error
runtime error
Runtime Error!
Program:
Microsoft Visual C++ Runtime Library
_getbuf.c
cchCount1==0 && cchCount2==1 || cchCount1==1 && cchCount2==0
a_cmp.c
a_map.c
Unknown security failure detected!
A security error of unknown cause has been detected which has
corrupted the program's internal state. The program cannot safely
continue execution and must now be terminated.
Buffer overrun detected!
A buffer overrun has been detected which has corrupted the program's
internal state. The program cannot safely continue execution and must
now be terminated.