DEADBOLT

DEADBOLT

Not enough ratings
DEADBOLT: Beyond the Editor (An extra guide for map makers)
By SockPuppet and 1 collaborators
Ever played a map with a crossbow in it and thought:

"How?"


This guide focuses on adding secret objects through file editing for maps. It is highly recommended that you check Hopoo's guide and the advanced guide first.
   
Award
Favorite
Favorited
Unfavorite
Introduction
Again, this guide does not cover the workings of the editor. This guide is for the players who want "special" weapons or cosmetic displays in their maps or anything that involves the "outside" of the editor.

If you need a guide about the editor, then the three below can help you.

Hopoo's guide:
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=651807566

The advanced guide:
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=761140674

The triggers guide:
https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=1103643027

These are all great guides that cover what you need (or could do) with the editor alone, so if you want to make quality maps, then...

The first thing to do...

Since this guide deals with special features outside the Editor, one should know the first and most basic step:
Opening .nc files (map files) in a text editor.

Simply put, find your desired map's file, right click it, and then open it with notepad or something similar!

Duped Reaper(s)
What happens when you place two Reapers in one level?

Placing more than one Reaper in a level produces what we'd like to call... the "Duped Reaper." This clone functions the same as the real Reaper, but with several features.

Positives:
  • Duped Reapers act and move the same way, but the camera will NOT follow any of them. The "real" Reaper is determined based on who you placed first through the Editor.
  • Duped Reapers will not be killed by enemies (unless through collateral damage, such as explosions or stray bullets). Enemies will be alerted and will learn the real Reaper's location if they see any clone. This is both good and bad, honestly.
  • Can work with cutscenes (for harmless enemies).
Negatives:
  • Every Reaper in the map (even those that haven't been spawned, yet) will teleport and rendevous to whatever Reaper that has just exited a vent, stacking them all in one position.
  • Two or more Reapers picking up the same weapon at the same time will crash the game. Making the previous negative a big deal.
  • Enemies will constantly follow the clone and "cling" to them- unless there is a path to the real Reaper.
  • Dead clones will reset the game.

I would show some screenshots, but they don't really show much (or anything at all).



The Main Reason
Having Duped Reapers in the map are an excellent way to have "harmless" enemies. This can be quite useful if you want to make cutscenes with them. So if you're thinking of making a story-driven campaign, think if you need to have Duped Reapers.

Besides Duped Reapers, there are also two other methods that can help you achieve enemy pacification. All methods have different ups and downs, check them out and see what fits your map!
Using Sound Effects as Backround Music
For map makers, there sometimes comes a point where they start creating a collection or a campaign of maps. Usually it's story driven, sometimes it's just a bundle of mess (not necessarily the bad type of mess) held up together, other times it's a mix of the two.

I personally think that one of the hardest things to do with the editor is making/establishing the proper atmosphere for a map, or at the very least, actually making your level give off that feel.

Using sound effects as a map's background music is rather helpful for this. If you want silence or a crow to constantly caw irritatingly at your level, then you can use "wCrowCaw.ogg" as your backround music.

Here's how.


The Process

The first thing that you should naturally do is find the game's folder. This can be usually accessed through this directory: C:\Program Files (x86)\Steam\steamapps\common\DEADBOLT

Next, find the sound effect that you want to use. In this case, I'm sticking with "wCrowCaw.ogg."
*Note that the tracks with the format of "DB____.ogg" such as "DBY1.ogg" are the game's music files.

Lastly, open your map's file through an application like Notepad. On line 6, the track being used as the backround music should be listed there.




Replace this track into the track/sound effect that you want to use. Remember to include ".ogg" at the end! Make sure to save right after as well!



And you're done! Note that you can only hear custom tracks in-game (not in the editor), and if you open your map with the editor, you'd have to replace the track again.
Resizing Objects
Resizing objects are useful for several reasons, primarily for decorations. So then, how do you resize objects?


The Process
The process is simple! Of course, you need to do some file editing, but that should be expected from the "Beyond the Editor" guide.

The first step is to place an item in your map. Make sure it exists first, you know?
In this case, it's a fridge. However, resizing objects are not limited to just cover objects. You can resize enemies, streets, doors, etc.




Next, oh! It's our favourite step! Open up the map's .nc file in a text editor and find your object. In this case, it's Fridge1.




Now, if you read the advanced guide, then you'd probably remember that some numbers were mentioned- namely, the x and the y-scales. Those numbers are, by default, always set on ONE. We're simply going to change these values into whatever number we want and the Fridge will either shrink, or grow in size. Note: The x-scale is the value underneath 192, while the y-scale is underneath the x-scale.
Here's a table for their positions (Check the advanced guide for the other variables).
Value
Definition
oFridge1
Entity Name
400
x-coordinate
304
y-coordinate
17.25
x-scale




(I changed them into 5)


And you're done! Just check the map ingame and test it out if it works.
Unfortunately for me, fridges don't resize properly. Just blame Hopoo for that.



While in the editor...




Be warned that resizing enemies or the Reaper can cause some disappointment. The x-scale for these entities are always reset back to 1 whenever they move, but not their y-scale. So you can imagine a very stretched (or not tiny) Reaper walking around with the same width.


Invisible Walls

I recall some of kilozombie's levels having a certain gimmick of "invisible" walls. These walls were still physical and can be walked on, but they were not "visible", further more, they still block light.

Invisible walls can be simply achieved through changing a wall's scale/size. It's a HUGE pain to do so I'd recommend doing it before you place anything else.

To make invisible walls, open the .nc file of your map and find the desired wall. Use the coordinates to help your search.



*Note that oB are the wall objects

Based on the text, the walls are apparently 17.25 wide, and 0.25 tall. Changing the height in this case will make the walls thinner so we'll do that instead of the width. The value of 0.03 makes the walls physical, but invisible, so this works.





Compare the walls! See the differences?


The Second Pacification Method: Blocking Their Line of Sight
Do you recall the Duped Reaper's pacification method? if so, then you'd know that there are at least two more methods of pacification. Blocking Their Line of Sight (BTLoS for short) is the second method, and it's really simple! Just use walls to block an enemy well enough so that they can't see you, but the wall is thin enough to not be bothersome.

Enemies can still see through 0.03 walls, so in order to do BTLoS, you'd have to find the wall's correct position and correct width. Further more, this method doesn't work well in other situations besides cutscenes, mainly because the walls still block the .

A good usage/example of this method is the "reaper goes to 7-11 to buy nachos" map created by "Alex Pine." I don't think he necessarily used walls to block the Punk and the dog's sight, but it uses the same principle.

Reaper


Adding Special Objects - Step 1: Choosing an Object
In order to add special objects in your map, you have to know what object you'll be adding.

Choose an object (or objects) below then proceed to the next step.

  • oXbow – Crossbow
  • oPlasma – A General's Arm
  • oSub – Tactical SMG
  • oSPistol - Suppresed Pistol
  • oCandlePlaceCassette – Candle placing cassette player
  • oEfFirefly – Tiny firefly
  • oAptStairwell – Stairway to docks
  • oAptBedside - Fix Photo from the demo
  • oAptChand – Apartment chandelier
  • oAptBox - Reaper's apartment boxes
  • oAptMirror – Apartment mirror
  • oAptFurniture – Ibzan’s furniture
  • oAptRack - Weapon Rack
  • oAptWindows - Apartment windows
  • oCharon - Charon w/ weapon shop
  • oEfFlare – Flare
  • oGhost – Ghost
  • oWhiteFlash – A huge bright light covering the whole screen that doesn't disappear
  • oCat – Reaper's cat
  • oCredits – Credits
  • oEfBubble – Speech bubble
  • oEfBulletRefund – Old fire
  • oLogo – Game logo
  • oEfSmokeSmall – Smoke particle
  • oEffect – Gunshot
  • oEndGame – Game ending
  • oFire – New fire
  • oFireplace - Reaper's Fireplace
  • oKeycard – Keycard
  • oLightfixtureGarage – Red light
  • oLightFade - A Ring of Light
  • oMissionSelect – Mission select
  • oNewWeapon – New weapon notification
  • oPPipe – Darkening effect
  • oSniperCredits – Credits sniper scope
  • oSoul – Soul
  • oSoulBall – Generals’ spell
  • oTip – Hints
  • oUpgrade – Charon’s shop
  • oUpgradeWeapon – Outdated weapon upgrade menu
  • oAchievementScreen – Achievement screen
  • oArrow – Arrows
  • oBJumpthrough – Some kind of weird horizontal invisible box?
  • oCableBox – Cable box
  • oCassette – Cassette menu
  • oCassettePickup – Cassette pickup
  • oCandleIdle1 – Idle Candle
  • oCandleWarning – Idle Candle (with warning)
  • oGrenadeActive – Active flashbang
  • oDetector1 – A smoke alarm?
  • oInit – Startup screen
  • oLightGlow – Hopoo haunts you
  • oLockGame – Lockpicking minigame
  • oMaskReflect – Seems to cause hammer swoosh sound effects at a very rapid rate
  • oOven1 – An Oven, duh.
  • oPhysCokeGore – Ash chunk
  • oPhysDebris – Wall chunk
  • oPhysDebrisFlaming – Wall chunk but with passion
  • oPhysGlass – Glass shard
  • oPhysGore – A bloody giblet
  • oPhysPoolBall – Pool ball
  • oPhysSparks – A spark
  • oSnowSecret – Spoilers: Ibzan's secret tape
  • oStat – Level finished screen.
  • oZombCamera – Zombie camera with chain.
  • oZombCameraHead – Zombie camera without chain.

Notice how each object listed above has two names/titles: the object's entity name (e.g. oXbow) and the object's normal name (Crossbow).

I'll be choosing the crossbow as the test object, but feel free to choose something else (although they may crash the game or do something undesirable).

If you want to see a short summary of their functions (and if they crash) then visit this link:
https://docs.google.com/document/d/1I2KbJLQxghKW9Ubo69VNl2Qyh7_YiXYGOhqy7ZWtUkI/edit?usp=sharing

Thanks to "kilozombie" and "Square_Rabbit" for putting this list together!
Step 2: Adding the Object Itself
Now that we've both decided on an object, let's open a map in Notepad (or whatever's similar). Maps have a ".nc" at the end, so make sure to open those.

Note: If this is your first time adding an object through file editing, then I recommend making and using test maps.

My test map is simple. It has the Reaper, a room, and a trailer wheel.




To add the crossbow, we need to find whatever object we want to replace in the map through notepad, and then replace that with the crossbow. I'm replacing the trailer wheel in this case, so that means I have to find it in the map through the text editor that I'm using (notepad).





Notice the format of the text. If you read the advanced guide, then you'd know that it's set up in this way:

Object Stats
Corresponding to...
oTrailerWheel
Entity Name
672
x coordinate
288
y coordinate
1
x-scale
1
y-scale
0
frame #
0
Object's state
0
patrol distance

Feel free to tinker around with these values, but for now, I'm replacing the entity's name (oTrailerWheel) with the crossbow's entity name (oXbow).
Extra Step: Learning Entity Names
Adding a special object requires you to rename/replace an object's entity name, so that means you would have to know what entity name to replace, right? So what if you don't know what the entity name is?

Thankfully, command spawns can help with this. Grab a command spawn in the editor, and make its child the entity that you're going to replace:






...And just above the command spawn is...!



The entity name!
Step 3: Save and Test
Everything after that is straightforward. Just save the document, and test it out in the game!




Keep in mind that maps that have these special objects will crash the editor if you open them! That means you'll have to replace the objects (into something else that doesn't crash the editor) all over again in order to open the map in the editor.

Note that if you want to attach an item to a spawn tool, you'll need to replace the object's name in the spawn tool's section as well. You can either use the Find & Replace tool in your chosen text editor, or you can replace it manually.





Replace both of these, otherwise the level will crash when it attempts to spawn the item, since it's trying to find the wrong entity/object. In this case, it would try to spawn oTrailerWheel, which no longer exists in the map because I physically/visibly replaced it with oXbow (crossbow).
The Great Beyond
Unfortunately, many of the special entities can crash the game. The sections after this will be dedicated to those who experience certain types of crashes with certain entities.

Comment in the comment section below if you want to see this guide talk about certain special entities! Suggestions will be considered.






Crossbows
The crossbow is a nice weapon (not as nice as its console version, though). Its projectiles are affected by gravity, but it can't kill zombie cameras. It's also silent, strong, and carries 5 bolts.

However, it has one simple flaw.
It crashes the game when you fall while holding it.

To avoid crashing:
Simply avoid falling while holding a crossbow! That's all.
5 Comments
SockPuppet  [author] 5 Jun, 2020 @ 9:18pm 
Anyway, hopefully I helped.

If you haven't, you should DEADBOLT's Discord server. They're still talking about maps and modding in there (while I observe their progress, heh). You could probably search the server for when I discovered the frozen state, too (it'd be like finding old documents or something).
SockPuppet  [author] 5 Jun, 2020 @ 9:18pm 
Hiya. It's been a while since I've played DEADBOLT, but it looks like I failed to update this guide. lol

If my memory serves me right, you can use the frozen state method simply by changing the entity's state in the .nc file of your map.

As I'm sure you know, enemies have multiple states. Usually. Refer to the table/format, and you'll be able to find the line where the object's state is in (under the frames and above the patrol distance line). Change this line to a random number, like 91, and the enemy should be frozen in that unknown state. Note that Technicians can break through this once you leave their line of sight (because they'll enter a state of deploying bombs). Lastly, make sure you're using a number that doesn't correspond to a state number- so to say, changing their state to a known state.

This basically freezes the enemy in place. They can see you, be alerted and shout at you, but they shouldn't move or shoot.

KingSlayer 4 Jun, 2020 @ 10:46pm 
I am Just making deadbolt MAPS which contains my own deadbolt stories.
I just want to know is there anymore ways to make harmless enemies? without clinging?

As you said:

Blocking Their Line of Sight:
The Frozen State:

I was able to read duped reaper and blocking tech but there were no FROZEN STATE tech on your extra guide. If it's possible could you tell me?
SockPuppet  [author] 24 Aug, 2018 @ 6:49pm 
Thanks! Maybe I'll add that, but your map still crashes on me for some reason, so.
Alex Pine 22 Aug, 2018 @ 1:48am 
Great guide! My latest map uses oSPistol and oSub, weapons not found in the editor, but for some reason they crashed the game too. I fixed the crash by moving these entities and their numbers in the code to the very end of the .nc file, and that fixed it. Maybe this method can help someone else, so you could add it to the guide. :mw: