[Question] DBR Editor setup + Making an Enemy

maybe you can read some carefully prepared tutorials.

Which are linked to…?

Myself I’m also interested in what needs to be done to change an enemy such as it’s actual name rather then type of enemy + also would like to know how to make a new faction.

I’m hoping to have just 1 enemy faction so all enemies are unified against the player - also interested in how to make an enemy specifically buff a hero/boss enemy with something like an Aura so in order to get rid of the buff you have to kill the enemy first.

I’ve done a quick check on the modding tutorial thread and the pdf guide but haven’t found much of use.

I am pretty decent at the Level/World editor, and I know how to add enemies to the world, but I need to know how to use the other editors to make custom content. Here are some of my modding goals:

• Constant Mob Spawner: An object (Proxy?) that spawns a group of enemies every 15 seconds. The mobs scale with player level +1 or +2.

• Custom Mob/Enemy: I want to make a custom enemy for my mod. This enemy has an aura skill that buffs nearby enemies with additional defense and resistances.

• New Item (Demon Essence): This item is dropped by the custom mob/enemy used for a repeatable quest.

• Repeatable Quest: I want to make a quest that is repeatable that accepts the new item “Demon Essence” and as a reward you get a random Blue tier item that matches your level. (An alternative would be to make a new vendor that has Green / Blue / Purple items and accepts Demon Essences for the items)

I didnt include a new mastery because that is already a lot of work I think compared to my goals listed.

I tried looking for tutorials. On Youtube I found a German tutorial for using the Level Editor, but nothing for DBR Editor. On the forums I saw some tutorials or other posts asking similar questions, but I just dont know how to use the DBR Editor properly, I dont know what to do at all with that thing. The Tutorial PDF doesnt really show how to use it, lets say I want to make a new enemy that casts “Trozan’s Sky Shard” every 5 seconds, I just dont know where or how to start. How do i get an enemy to work on in my mod(what do I do to make a new enemy in my DBR editor?), how do I find the skill info to make the enemy use the Sky Shard skill? I just dont know what the hell to do with the DBR Editor or how/where to add stuff to the DBR Editor (resource files?). I need a video tutorial on someone making an enemy, so I can see exactly how they use the tool.

In my case I just feel like it is too early for good explaination tutorials / video tutorials.

All right.

  1. You could start by importing any record of an enemy into your database. You do this from asset manager. You would want to choose a record that would need the least amount of editing/effort to bring it to your vision. Many enemies cast Trozan’s. Or something like Trozans. But some are grobles, others are undead, what do you want your enemy to be?

  2. After you have imported the record and modified it, given it a new name even, you build your mod [Press F7]. Then, you go to the world editor, and as you would place any monster on the world, you find your own monster within the records and place it.

Generally, you don’t start a new .dbr record from scratch. It’s futile. You import a record, and then modify the existing record to save time.

  1. You find the skill by searching at database/records/skills. It also helps if you know which enemy casts what, as you can then follow the .dbr trail from there.

For example, for your buffing enemy.

  • I know that Cronley’s Skirmishers can do that. I go to Asset Manager’s “import record” and get humanoutlaw_skirmisher_b01.dbr. I rename it right now to “repalootez_customs”.

  • 3rd tab, database (green folders). I navigate to the proper folder structure, double click on the record and the DBR editor opens up.

  • I go to Skill Tree, and to the right, what do I see? outlaw_skirmishaura.dbr. That’s it! It even tells us the path where the skill stays!

  • This time import outlaw_skirmishaura.dbr as before and take a look inside. What is this?! It is just a vessel for outlaw_skirmishaura_buff.dbr. Aaargh!

  • For the last time, import outlaw_skirmishaura_buff.dbr, and take a look inside. At long last, we are able to modify the buff itself. A good place to start is Offensive and Defensive Parameters.

-After changing “what you like”* and you close the window, you $don’t forget to save when prompted$. Then you Build your mod. [F7]

  • Near the finish line. Open the world editor, select the item tool and type in the search box repaloo. It should present you with your record. Place him on the world, save and exit.

  • Now, build your mod for the last time and you are ready to play.

*You may very well decide that you want a different mesh for your enemy. A different gender. A different torso and a different name. These also have to be edited one by one, and that’s why you should try to import the record that suits you best under any given circumstances, so that you do less busywork.

So I changed an enemy’s name but it starts with “tag not found” so I’m not sure which file I haven’t changed yet.

Faction wise I am also stumped as to how to change a faction. I copied/made a new faction name but I think I’m still missing something.

Do you have a modstrings.txt in YourMod\source\Text_EN? If not, make one manually and autocreate asset.

Then, each and every time you make a change to anything that is shown to the player through a tag, you have to write it down in the modstrings.txt. That’s why I have it open and minimized, so that I can immediately write it down and not forget.

For example in an npc’s Actor Variables, we have the first field: description.

If you write Bob in there, you have to go to the modstrings.txt and write down a line:

Bob=Bob

so that the game knows what tag to load. Things can get messy really fast, so I find it best to keep the “tag” prefix to remind me I have to make an entry to modstrings.txt.

Edit: Oh, factions! I haven’t touched them yet, I’m scared

Thanks, seems to be working.

I’ll have to figure out the faction stuff I guess.

edit: Actually I also have to figure out how to change the Race as well as Faction. Race as description and Faction so as enemies don’t attack each other.

So changing the Name of an enemy is working.

Changing the Race however isn’t. I’ve checked DBRs and such and messed around with the modstrings.txt trying different combinations and the only result I’ve gotten is unknown tag from simply changing the Race002 to some other number.

I’ve tried searching for “race” or “racial” which yields no results and looked at the Modding “Guide” which smugly points out what “Character Racial Profile” means - but not how to change it.

Think I’ll take a break before coming back and smacking my head against the computer a bit more.

Messing around with the faction is probably going to be even worse I imagine…

Thanks this step by step really helped me learn the tool better!

So I followed the steps and I’m looking around the outlaw_skirmish_aurabuff.dbr and I’m in “offensive parameters -> offensive absolute -> total damage modifier” I got a new window where I can enter in stuff, but I’m not sure what to add. Lets say I want the aura to increase the Total Damage by 100%, what box/field do I enter 100 or 100% into?

Also am I in the right section? (currently in “offensiveTotalDamageModifier”, but there are 3 other sections)

I also went into the “Skill Effect” section for the aura, and found “skillCastAuraName” I assume I can change this to make the aura look like Vindictive Flame? Also is there a way to make the skill show multiple aura effects (like adding a comma after the first record link, or should I make a 2nd aura that does nothing but just has the 2nd or 3rd aura effect?)

Update: Im inside the Defensive Parameters and in Defensive Physical. If I want to make the aura give 25% more physical resistance, would I put 25 in “defensivePhysical” or “defensivePhysicalMultiplier”? (Trying to make the aura give 25% to ALL damage types, so I’d do the same for cold,fire,light, etc)

Sticky: Tutorials - A list
rorschachrev
http://www.grimdawn.com/forums/showthread.php?t=37919

Instead of writing the same custom explanations over and over for the same questions, we should probably reference known solutions. If those explanations need to be improved, we should do so as a tutorial. Hopefully we’ll convert a lot of the Q&A replies into tutorials over time.

As stated in my past comment which you now quoted - I checked this thread before.

Either the descriptions of linked posts/threads aren’t as accurate or perhaps the possibility of a thread detailing and going over the process of making a new enemy and such isn’t really there.

Which is why I wondered why your own post didn’t have any link to specify what you meant - linking to a thread full of different information that may or may not be useful… isn’t really useful.

Well Asset Manager is relelvant. So is learning the build process and working directories, how to extract the game files and so on. Actual NPC and mob DBR files are just DBR files. We use the same techniques to edit skills as items, mobs as npcs. Some parameters are different, but what’s irrelevant?

What you really need apparently is an explanation of the differences between integers and real values, booleans and arrays.

So I followed the steps and I’m looking around the outlaw_skirmish_aurabuff.dbr and I’m in “offensive parameters -> offensive absolute -> total damage modifier” I got a new window where I can enter in stuff, but I’m not sure what to add. Lets say I want the aura to increase the Total Damage by 100%, what box/field do I enter 100 or 100% into?

You put 100.00 in the field since it says Real in the field type, press set and it goes underneath. Note: This skill has one level, but other skills have more levels. You will have to make as many entries as there are skill levels.

Also am I in the right section? (currently in “offensiveTotalDamageModifier”, but there are 3 other sections)

I don’t know if there’s a right section.:smiley:

I also went into the “Skill Effect” section for the aura, and found “skillCastAuraName” I assume I can change this to make the aura look like Vindictive Flame? Also is there a way to make the skill show multiple aura effects (like adding a comma after the first record link, or should I make a 2nd aura that does nothing but just has the 2nd or 3rd aura effect?)

I don’t know about that yet. I think it must be one fx per aura, but I hope we could slap some together instead.

Update: Im inside the Defensive Parameters and in Defensive Physical. If I want to make the aura give 25% more physical resistance, would I put 25 in “defensivePhysical” or “defensivePhysicalMultiplier”? (Trying to make the aura give 25% to ALL damage types, so I’d do the same for cold,fire,light, etc)

[b]plain defensive. If you write 30, and the char has 0, they go to 30.
Defensivemultiplier, if you write 30, and the char has 0, they stay at 0.

Also, you may want to activate descriptions in the dbr editor, as they explain many fields. Check the top toolbar. But, for me it comes down to much trial and error. Build, play, build, play…[/b]

Alright, I got the aura working and changed the enemy stats by making a new bio for the enemy.

I have 1 problem though, How do I change the enemy’s attacking speed? I tried “Character Parameters -> Character Speed” the tables there seem to effect the attack animation. I tried “Character Parameters -> Character Base Attributes” and I tried changing the Real to like 10 and nothing changed.

Im pretty sure I have to change the String to something else, but I’m not sure what the string options are for very fast attack speed. I tried checking a fast attacking enemy like Boros: Master of the Pit, but he also has the same settings of “CharacterAttackSpeedAverage”.

The speeds have 3 types of values I think. Some are the base speed, which is about 100 give or take a bit. The second are percentage modifiers (reals) and the third are + or - (integers)

I’ll try to look up details later with examples and data type verification but I’m doing some other programming now.

Alright, cool. Right now my enemy is attacking once per 3 seconds, I’d like the enemy to attack every second.

Also I have setup a Proxy(enemy spawner) that spawns my custom made enemy. I did this because everytime I made an update to the custom enemy, I’d have to delete, and re-add him to the world through the World Editor. One thing I want to do is make the Proxy spawn the enemy(s) wave after wave, I’ll have to take a look at the Wightmire Riftgate Proxy to see how it was done so enemies spawn wave after wave.

It would be interesting if linking patrol points to your proxy would have your waves of enemies continue to follow the patrol points.

Then if you have a way to trigger when those waves occur and how you could more easily make a wave based defense event.

I Hope I can link them, my mod I want to make includes enemies constantly spawning and moving to the center of the map, which is where the player is, and the player has to survive as long as they can.

If you figure out how to make an Enemy Spawner, that constantly spawns enemies and those enemies move to a point, let me know!

Well here is an idea:

If you want all enemies to just fight the players - most likely you’ll have to edit what faction they are in so they won’t aggro each other.

Then make different variations of Aetherial Obelisks which can already summon zombies + mutants. Add more skills to summon more types of enemies (I’m guess you can change the cooldown of which it can use certain abilities/spawns).

Make the aggro range far higher for all monsters + aether obelisk so that enemies will find players wherever they are.

Place aether obelisks all around the map in a circle with players in the middle, then give the aether obelisks a higher range for distress call + make some powerful guard enemies with low aggro range that are only there to defend the aether obelisks.

I’m just guessing at what can be done, haven’t tested anything. If you want to work together on something like this I may switch off from fiddling with my Diablo 2 mod that I’ve been messing with.

edit: I’ll probably test my proposed idea to see if it works.

The idea sounds solid, but 1 thing I’d change is making the Aetherial Obelisks simply Untargetable, the path for this is when inside the AetherialObelisks.DBR go to All Groups -> Character -> Invinsible -> Set to TRUE

I’d love to work on the mod together! Speaking of Diablo 2, I am making the enemies in my mod based on Diablo 2 (in terms of tiers atleast, like Normal, Champion pack, and Elite pack). I already a proxy to spawn a Champion pack (3 to 4 “blue” enemies) and a proxy to spawn an Elite pack (1 “yellow” enemy with 5 to 7 “normal” enemies).

I have some pretty neat enemies made.


Update:
I have 1 of my enemies not using their default attack and always uses a special attack (customized volley) even when volley is on CD. The enemy is pretty much the same as “humanoutlaw_ranged” but with the added custom skill. When I remove the custom skill, the enemy attacks with the default attack.

Here is the enemy’s Skill Configuration:
(Skill Tree & Skill Configuration is the same as “humanoutlaw_ranged” except with the added customized volley skill)