Embed mutators into myLevel

Feedback, discussion & bug reporting on current maps
DaveTheBlaze
Posts: 22
Joined: Sun 15. Mar 2020, 18:28
Description: CovidFreeMapper

Embed mutators into myLevel

Post by DaveTheBlaze » Thu 1. Oct 2020, 14:56

Hey guys,
does anyone know how to succesfully embed mutators into the map itself (a.k.a. myLevel)?
I know it is generally a bad idea to do so but please don't ask why I have to do this.

I found this instruction in the UnrealWiki:
-> See link: http://www.unreal.ut-files.com/3DEditin ... -code.html
-> And: http://www.unreal.ut-files.com/3DEditin ... mbedd.html
1. Make sure that you're not already using that .u file externally in your map; in other words, make the .u file import the first step of using the actors defined in that .u file. If you already have added actors from that .u file in your map, cut them into the clipboard, save your map, and close UnrealEd.
2. Make sure that the .u package you're about to import isn't automatically loaded when UnrealEd starts. Check the EditPackages lines in UnrealTournament.ini and delete any line pointing to that .u package if necessary (then restart UnrealEd). Also, place the .u file you would like to import into the \UnrealTournament\System directory.
3. Do UnrealEd Main Menu → View → Log to open the [log window]? or click the button on the Console Bar. At the prompt, enter:

obj load file=whatever.u package=MyLevel
(substitute "whatever" by the name of the package you want to import, of course). If everything works out, you'll see some log entries along the lines of "New file, existing package." If you made a typo in the file name, UnrealEd crashes (courtesy of the UnrealEd Goblin).
4. If you previously had cut/removed existing actors from that package from your map, paste/re-add them.
5. Do a full rebuild, then save.
It is not difficult to follow these instructions but my question is: will it work with more complex mutators that are depending on textures, meshes or .ini-files (instead of just the .u and .ucl file for very simple mutators)?

Will the embedding process embed all the files needed for the mutator to work?
And if not, how to embed additional textures, meshes or ini-files in order for the mutator to find them?

I know it is quite a specific question but maybe anyone in here knows the answer to that.

Thanks in advance!
Greets, Dave

User avatar
GLoups!
Posts: 549
Joined: Fri 3. Feb 2012, 17:57
Description: Just play for fun.
Location: Fr

Embed mutators into myLevel

Post by GLoups! » Fri 2. Oct 2020, 09:16

The followings commands work but for somes reasons you have to do it twice, use the log to see what's going on :

obj load file=YourFiles.u package=myLevel
obj load file=YourFiles.ukx package=myLevel
obj load file=YourFiles.uax package=myLevel
obj load file=YourFiles.usx package=myLevel
obj load file=YourFiles.utx package=myLevel


What do you mean about ini-files ? .ucl or .ini , both files will crash Unrealed with an error message, do you really need theses files or it is configurable once the actor is myleveled via "editdefault class" ?

Last thing, you will have to use the LevelGameRules actor in your map, and the server status while your map is played will no longer be on white list.

DaveTheBlaze
Posts: 22
Joined: Sun 15. Mar 2020, 18:28
Description: CovidFreeMapper

Embed mutators into myLevel

Post by DaveTheBlaze » Fri 2. Oct 2020, 13:30

thx GLoups!

Well, I know the commands but will it be enough for the mutator to work? I mean how does the mutator know he has to look into the myLevel Package from now on for textures, meshes, etc.?

Regarding .ucl:
I guess the .ucl file is not that important for the mutator, it only defines the mutator name, friendly name, fallback name, description and stuff.

Regarding .ini.file:
Some mutators come with a config file (ini file). Take the Satore Monsters Pack for example:
The file of this mutator looks like the following:
[Setup]
Product=satoreMonsterPack
Language=int
Version=120
Archive=satoreMonsterPack.ut4mod
SrcPath=.
MasterPath=..
MasterPathUnrealGameContent=..
Requires=UT2004Requirement
Group=SetupGroup
Group=System
Group=Textures
Group=Sounds

[UT2004Requirement]
Product=UT2004
Version=3186

[SetupGroup]
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPQueen.MaxChildren=3
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPNaliFighter.bNoThrowWeapon=True
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPNaliFighter.WeaponClassName=XWeapons.BioRifle
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPNaliFighter.WeaponClassName=XWeapons.ShieldGun
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPNaliFighter.WeaponClassName=XWeapons.RocketLauncher
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPDevilFish.bCheckWater=true
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="None",MonsterClassName=)
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Pupae",MonsterClassName="SkaarjPack.SkaarjPupae")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Razor Fly",MonsterClassName="SkaarjPack.Razorfly")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Manta",MonsterClassName="SkaarjPack.Manta")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Krall",MonsterClassName="SkaarjPack.Krall")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Elite Krall",MonsterClassName="SkaarjPack.EliteKrall")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Gasbag",MonsterClassName="SkaarjPack.Gasbag")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Brute",MonsterClassName="SkaarjPack.Brute")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Skaarj",MonsterClassName="SkaarjPack.Skaarj")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Behemoth",MonsterClassName="SkaarjPack.Behemoth")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Ice Skaarj",MonsterClassName="SkaarjPack.IceSkaarj")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Fire Skaarj",MonsterClassName="SkaarjPack.FireSkaarj")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="WarLord",MonsterClassName="SkaarjPack.WarLord")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Queen",MonsterClassName="satoreMonsterPackv120.SMPQueen")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Titan",MonsterClassName="satoreMonsterPackv120.SMPTitan")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Stone Titan",MonsterClassName="satoreMonsterPackv120.SMPStoneTitan")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Mercenary",MonsterClassName="satoreMonsterPackv120.SMPMercenary")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Elite Mercenary",MonsterClassName="satoreMonsterPackv120.SMPMercenaryElite")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Slith",MonsterClassName="satoreMonsterPackv120.SMPSlith")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Skaarj Trooper",MonsterClassName="satoreMonsterPackv120.SMPSkaarjTrooper")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Skaarj Sniper",MonsterClassName="satoreMonsterPackv120.SMPSkaarjSniper")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Giant Gasbag",MonsterClassName="satoreMonsterPackv120.SMPGiantGasbag")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="DevilFish",MonsterClassName="satoreMonsterPackv120.SMPDevilFish")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="MetalSkaarj",MonsterClassName="satoreMonsterPackv120.SMPMetalSkaarj")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="NaliFighter",MonsterClassName="satoreMonsterPackv120.SMPNaliFighter")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Nali",MonsterClassName="satoreMonsterPackv120.SMPNali")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Nali Cow",MonsterClassName="satoreMonsterPackv120.SMPNaliCow")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.SMPMonsterTable.MonsterTable=(MonsterName="Nali Rabbit",MonsterClassName="satoreMonsterPackv120.SMPNaliRabbit")
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.MonsterNum[0]=1
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.MonsterNum[1]=2
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.MonsterNum[2]=3
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.MonsterNum[3]=4
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.MonsterNum[4]=5
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.MonsterNum[5]=6
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.MonsterNum[6]=7
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.MonsterNum[7]=8
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.MonsterNum[8]=9
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.MonsterNum[9]=10
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.MonsterNum[10]=11
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.MonsterNum[11]=12
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.MonsterNum[12]=13
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.MonsterNum[13]=14
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.MonsterNum[14]=15
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.MonsterNum[15]=20
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.FallBackMonsterNum=4
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.bUseSMPWaveTable=True
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.bUseWebServerConfigPage=True
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.SMPWaves=(WaveDuration=90,WaveDifficulty=0.300000,WaveMaxMonsters=16,MonsterNum[0]=1,MonsterNum[1]=1,MonsterNum[2]=2,MonsterNum[3]=2,MonsterNum[4]=4,MonsterNum[5]=16,MonsterNum[6]=0,MonsterNum[7]=0,MonsterNum[8]=0,MonsterNum[9]=0,MonsterNum[10]=0,MonsterNum[11]=0,MonsterNum[12]=0,MonsterNum[13]=0,MonsterNum[14]=0,MonsterNum[15]=0,FallBackMonsterNum=1)
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.SMPWaves=(WaveDuration=90,WaveDifficulty=0.500000,WaveMaxMonsters=16,MonsterNum[0]=1,MonsterNum[1]=1,MonsterNum[2]=2,MonsterNum[3]=4,MonsterNum[4]=16,MonsterNum[5]=7,MonsterNum[6]=0,MonsterNum[7]=0,MonsterNum[8]=0,MonsterNum[9]=0,MonsterNum[10]=0,MonsterNum[11]=0,MonsterNum[12]=0,MonsterNum[13]=0,MonsterNum[14]=0,MonsterNum[15]=0,FallBackMonsterNum=1)
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.SMPWaves=(WaveDuration=90,WaveDifficulty=0.499927,WaveMaxMonsters=16,MonsterNum[0]=1,MonsterNum[1]=4,MonsterNum[2]=16,MonsterNum[3]=5,MonsterNum[4]=18,MonsterNum[5]=2,MonsterNum[6]=0,MonsterNum[7]=0,MonsterNum[8]=0,MonsterNum[9]=0,MonsterNum[10]=0,MonsterNum[11]=0,MonsterNum[12]=0,MonsterNum[13]=0,MonsterNum[14]=0,MonsterNum[15]=0,FallBackMonsterNum=1)
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.SMPWaves=(WaveDuration=90,WaveDifficulty=1.000000,WaveMaxMonsters=4,MonsterNum[0]=12,MonsterNum[1]=2,MonsterNum[2]=1,MonsterNum[3]=4,MonsterNum[4]=0,MonsterNum[5]=0,MonsterNum[6]=0,MonsterNum[7]=0,MonsterNum[8]=0,MonsterNum[9]=0,MonsterNum[10]=0,MonsterNum[11]=0,MonsterNum[12]=0,MonsterNum[13]=0,MonsterNum[14]=0,MonsterNum[15]=0,FallBackMonsterNum=12)
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.SMPWaves=(WaveDuration=90,WaveDifficulty=2.159460,WaveMaxMonsters=14,MonsterNum[0]=9,MonsterNum[1]=7,MonsterNum[2]=4,MonsterNum[3]=3,MonsterNum[4]=0,MonsterNum[5]=0,MonsterNum[6]=0,MonsterNum[7]=0,MonsterNum[8]=0,MonsterNum[9]=0,MonsterNum[10]=0,MonsterNum[11]=0,MonsterNum[12]=0,MonsterNum[13]=0,MonsterNum[14]=0,MonsterNum[15]=0,FallBackMonsterNum=9)
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.SMPWaves=(WaveDuration=90,WaveDifficulty=1.207269,WaveMaxMonsters=4,MonsterNum[0]=14,MonsterNum[1]=0,MonsterNum[2]=0,MonsterNum[3]=0,MonsterNum[4]=0,MonsterNum[5]=0,MonsterNum[6]=0,MonsterNum[7]=0,MonsterNum[8]=0,MonsterNum[9]=0,MonsterNum[10]=0,MonsterNum[11]=0,MonsterNum[12]=0,MonsterNum[13]=0,MonsterNum[14]=0,MonsterNum[15]=0,FallBackMonsterNum=14)
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.SMPWaves=(WaveDuration=90,WaveDifficulty=1.071242,WaveMaxMonsters=12,MonsterNum[0]=8,MonsterNum[1]=10,MonsterNum[2]=1,MonsterNum[3]=19,MonsterNum[4]=11,MonsterNum[5]=20,MonsterNum[6]=0,MonsterNum[7]=0,MonsterNum[8]=0,MonsterNum[9]=0,MonsterNum[10]=0,MonsterNum[11]=0,MonsterNum[12]=0,MonsterNum[13]=0,MonsterNum[14]=0,MonsterNum[15]=0,FallBackMonsterNum=8)
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.SMPWaves=(WaveDuration=90,WaveDifficulty=1.533734,WaveMaxMonsters=16,MonsterNum[0]=13,MonsterNum[1]=1,MonsterNum[2]=1,MonsterNum[3]=1,MonsterNum[4]=1,MonsterNum[5]=1,MonsterNum[6]=0,MonsterNum[7]=0,MonsterNum[8]=0,MonsterNum[9]=0,MonsterNum[10]=0,MonsterNum[11]=0,MonsterNum[12]=0,MonsterNum[13]=0,MonsterNum[14]=0,MonsterNum[15]=0,FallBackMonsterNum=1)
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.SMPWaves=(WaveDuration=90,WaveDifficulty=1.500000,WaveMaxMonsters=16,MonsterNum[0]=1,MonsterNum[1]=1,MonsterNum[2]=2,MonsterNum[3]=2,MonsterNum[4]=4,MonsterNum[5]=16,MonsterNum[6]=0,MonsterNum[7]=0,MonsterNum[8]=0,MonsterNum[9]=0,MonsterNum[10]=0,MonsterNum[11]=0,MonsterNum[12]=0,MonsterNum[13]=0,MonsterNum[14]=0,MonsterNum[15]=0,FallBackMonsterNum=1)
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.SMPWaves=(WaveDuration=90,WaveDifficulty=1.500000,WaveMaxMonsters=16,MonsterNum[0]=1,MonsterNum[1]=1,MonsterNum[2]=2,MonsterNum[3]=4,MonsterNum[4]=16,MonsterNum[5]=9,MonsterNum[6]=17,MonsterNum[7]=0,MonsterNum[8]=0,MonsterNum[9]=0,MonsterNum[10]=0,MonsterNum[11]=0,MonsterNum[12]=0,MonsterNum[13]=0,MonsterNum[14]=0,MonsterNum[15]=0,FallBackMonsterNum=1)
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.SMPWaves=(WaveDuration=90,WaveDifficulty=1.699927,WaveMaxMonsters=16,MonsterNum[0]=1,MonsterNum[1]=4,MonsterNum[2]=17,MonsterNum[3]=5,MonsterNum[4]=18,MonsterNum[5]=2,MonsterNum[6]=0,MonsterNum[7]=0,MonsterNum[8]=0,MonsterNum[9]=0,MonsterNum[10]=0,MonsterNum[11]=0,MonsterNum[12]=0,MonsterNum[13]=0,MonsterNum[14]=0,MonsterNum[15]=0,FallBackMonsterNum=1)
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.SMPWaves=(WaveDuration=90,WaveDifficulty=2.000000,WaveMaxMonsters=6,MonsterNum[0]=12,MonsterNum[1]=5,MonsterNum[2]=6,MonsterNum[3]=0,MonsterNum[4]=0,MonsterNum[5]=0,MonsterNum[6]=0,MonsterNum[7]=0,MonsterNum[8]=0,MonsterNum[9]=0,MonsterNum[10]=0,MonsterNum[11]=0,MonsterNum[12]=0,MonsterNum[13]=0,MonsterNum[14]=0,MonsterNum[15]=0,FallBackMonsterNum=12)
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.SMPWaves=(WaveDuration=90,WaveDifficulty=2.431514,WaveMaxMonsters=14,MonsterNum[0]=9,MonsterNum[1]=7,MonsterNum[2]=21,MonsterNum[3]=0,MonsterNum[4]=0,MonsterNum[5]=0,MonsterNum[6]=0,MonsterNum[7]=0,MonsterNum[8]=0,MonsterNum[9]=0,MonsterNum[10]=0,MonsterNum[11]=0,MonsterNum[12]=0,MonsterNum[13]=0,MonsterNum[14]=0,MonsterNum[15]=0,FallBackMonsterNum=9)
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.SMPWaves=(WaveDuration=90,WaveDifficulty=2.607269,WaveMaxMonsters=8,MonsterNum[0]=15,MonsterNum[1]=0,MonsterNum[2]=0,MonsterNum[3]=0,MonsterNum[4]=0,MonsterNum[5]=0,MonsterNum[6]=0,MonsterNum[7]=0,MonsterNum[8]=0,MonsterNum[9]=0,MonsterNum[10]=0,MonsterNum[11]=0,MonsterNum[12]=0,MonsterNum[13]=0,MonsterNum[14]=0,MonsterNum[15]=0,FallBackMonsterNum=15)
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.SMPWaves=(WaveDuration=90,WaveDifficulty=2.071242,WaveMaxMonsters=14,MonsterNum[0]=23,MonsterNum[1]=10,MonsterNum[2]=1,MonsterNum[3]=19,MonsterNum[4]=11,MonsterNum[5]=20,MonsterNum[6]=0,MonsterNum[7]=0,MonsterNum[8]=0,MonsterNum[9]=0,MonsterNum[10]=0,MonsterNum[11]=0,MonsterNum[12]=0,MonsterNum[13]=0,MonsterNum[14]=0,MonsterNum[15]=0,FallBackMonsterNum=8)
AddIni=System\satoreMonsterPack.ini,satoreMonsterPackv120.mutsatoreMonsterPack.SMPWaves=(WaveDuration=90,WaveDifficulty=3.000000,WaveMaxMonsters=16,MonsterNum[0]=13,MonsterNum[1]=1,MonsterNum[2]=1,MonsterNum[3]=1,MonsterNum[4]=1,MonsterNum[5]=1,MonsterNum[6]=0,MonsterNum[7]=0,MonsterNum[8]=0,MonsterNum[9]=0,MonsterNum[10]=0,MonsterNum[11]=0,MonsterNum[12]=0,MonsterNum[13]=0,MonsterNum[14]=0,MonsterNum[15]=0,FallBackMonsterNum=1)
Copy=(Src=System\Manifest.ini,Master=System\Manifest.ini,Size=14552,Flags=3)
Copy=(Src=System\Manifest.int,Master=System\Manifest.int,Size=537,Flags=3)
File=(Src=Help\satoreMonsterPackreadme.txt,Size=4230)

[System]
File=(Src=System\satoreMonsterPackMeshes.u,Size=6653045)
File=(Src=System\satoreMonsterPackv120.u,Size=2887334)
File=(Src=System\satoreMonsterPackv120.ucl,Size=948)

[Textures]
File=(Src=Textures\satoreMonsterPackTexture.utx,Size=1118503)

[Sounds]
File=(Src=Sounds\satoreMonsterPackSound.uax,Size=2009965)
Meaning: The mutator looks into that file in order to get the config for a certain type of monster. And adding a new monster is achieved by adding a new line to the .ini-file.
So the file itself isn't that 'unimportant' I guess. Will the mutator work even if there is no .ini-file?

User avatar
GLoups!
Posts: 549
Joined: Fri 3. Feb 2012, 17:57
Description: Just play for fun.
Location: Fr

Embed mutators into myLevel

Post by GLoups! » Sat 3. Oct 2020, 08:19

DaveTheBlaze wrote:
Fri 2. Oct 2020, 13:30
thx GLoups!
Well, I know the commands but will it be enough for the mutator to work? I mean how does the mutator know he has to look into the myLevel Package from now on for textures, meshes, etc.?
Yes, when you myleveled theses files, the references will automaticaly looking into your map for files, but like you said the ini-file will be missing and i have no idea how to fix this problem. :?

What if you add manually monsters in your map?

DaveTheBlaze
Posts: 22
Joined: Sun 15. Mar 2020, 18:28
Description: CovidFreeMapper

Embed mutators into myLevel

Post by DaveTheBlaze » Sat 3. Oct 2020, 12:13

Ah ok I see, thanks. One problem solved :).

And I don't really think you could add new monsters inside UEd in order for the .ini-file to get updated with the new monster.
I guess one could place the 'standard' monsters which are coming with the mutator itself but no custom ones.
The Satore Monster Mutator was just an example, I'm not even using this mutator on my map. I just wanted to know how it works with the .ini-files in general since a few of my other mutators rely on them.

I guess we close the topic for now and maybe someone will solve the whole mystery in the future.
Until then I'm not embedding the mutators. As I mentioned before it is a bad idea anyway.

But thank you GLoups! for the help!