doomygecko Posted August 1, 2009 Hey, ok so i've never used decorate before and I need to know a couple of things. First off, do you need an entire code or just for what you're editing (making a monster attack melee only and have a more powerful attack) And second, how wxactly do you get the decorate lump into the wad, I know you use XWE but do you do it before or after the mapp is done, if you do it after, how am I going to test it with the modified monsters and weapons while in ddom builder? Thanks in advance. 0 Share this post Link to post
DuckReconMajor Posted August 1, 2009 (skip the first four steps if you've already got a map made) open Doom Builder create New Map save the map and remember what you named it Close Doom Builder (a wad can't be open in DB and XWE at the same time) go to XWE open the wad you just created Go to Entry->New, create a lump called DECORATE, and write your code in it The DECORATE lump can be above or below your map, just make sure it's not in between the map lump parts (use Ctrl+U or Ctrl+D to move). Now close XWE and open this wad in Doom Builder In your Things menu there should be a section called DECORATE. Your DECORATE objects should be in there (there won't be a picture for them but don't worry, put it in your map anyway) The topics on this page should help with writing the code itself. 0 Share this post Link to post
Gez Posted August 2, 2009 doomygecko said:First off, do you need an entire code or just for what you're editing (making a monster attack melee only and have a more powerful attack) Just what you're editing, if you're simply modifying an existing actor (be it a monster, a weapon, a decoration, or whatever else). There's a good example of that on Torm's "Beastiary": it's the "super imp". Here's the full imp code (from zdoom.pk3):ACTOR DoomImp 3001 { Game Doom SpawnID 5 Health 60 Radius 20 Height 56 Mass 100 Speed 8 PainChance 200 Monster +FLOORCLIP SeeSound "imp/sight" PainSound "imp/pain" DeathSound "imp/death" ActiveSound "imp/active" HitObituary "$OB_IMPHIT" Obituary "$OB_IMP" States { Spawn: TROO AB 10 A_Look Loop See: TROO AABBCCDD 3 A_Chase Loop Melee: Missile: TROO EF 8 A_FaceTarget TROO G 6 A_TroopAttack Goto See Pain: TROO H 2 TROO H 2 A_Pain Goto See Death: TROO I 8 TROO J 8 A_Scream TROO K 6 TROO L 6 A_NoBlocking TROO M -1 Stop XDeath: TROO N 5 TROO O 5 A_XScream TROO P 5 TROO Q 5 A_NoBlocking TROO RST 5 TROO U -1 Stop Raise: TROO MLKJI 8 Goto See } }It's quite lengthy and it defines a lot of stuff that you might not want to change. So, here's the definition of the super imp:ACTOR SuperImp : DoomImp 3133 { PainChance 50 Obituary "%o was shocked by the imp's superior firepower." States { Melee: Missile: IMP3 A 8 A_FaceTarget IMP3 B 8 A_FaceTarget TROO G 8 A_BruisAttack Goto See } }As you can see, it's considerably smaller. All the stuff that isn't declared in the SuperImp's code is simply inherited from the DoomImp. (And what's not declared in the DoomImp's code is in turn inherited from Actor.) In this way, DECORATE is an object-oriented language: it features inheritance heavily, classes and instances, methods if you consider states to be akin to functions... Of course that comparison won't go very much farther than that; but keep it in mind anyway. Too often newbies think they have to copy everything and neglect to use inheritance. 0 Share this post Link to post