Create or open an existing project in MapStudio
Load (right click) the map you want in MapStudio (they're on the left side of MapStudio)
Find a bonfire near the location you want
Click on that bonfire and duplicate the bonfire (ctrl-D), move it to your desired location
Click on the collision near your bonfire
Copy all DrawGroups and DispGroups from the collision and paste them into your new bonfire (they should look identical)
Note the MapObjectInstanceParamID (it's in the Properties on the right side of MapStudio)
Click the arrow near your map on the on the Map Object List (it's on the left side of MapStudio)
Find your bonfire's objinstance_xxxxx and click on it (it's on the right side of MapStudio if you're still clicked on the bonfire)
Duplicate the existing bonfire's objinstance_xxxxx (ctrl-D)
Change the ID to that of the xxxxx in objinstance_xxxxx (you won't be able to save your changes otherwise)
Copy the name
Paste that name into your bonfire object's MapObjectInstanceParamID section (you need to click on your bonfire object again, not the objinstance_xxxxx)
Save your changes
Navigate to your mod project directory
Navigate to your Dark Souls 2 directory \steamapps\common\Dark Souls II Scholar of the First Sin\Game
If you are using ModEngine, ignore this. Otherwise copy the data from your project into the game directory
Open Yapped Honey Bear or ParamStudio and go to MapObjectBonfireParam
Duplicate the nearest bonfire's entry by clicking on the row, then click edit followed by Duplicate Row (you can find your bonfire by checking the Param ID in the objinstance_xxxxx for your bonfire in MapStudio)
The value for your row should preferably incremented by one higher than your duplicated bonfire
If you need your bonfire to be part of a different bonfire menu grouping, you can change this by swapping Unk04 (the second definition) to that of a different area grouping; there can only be five bonfires per grouping, so in this tutorial I've swapped mine to that of the Grand Cathedral rather than Frozen Eleum Loyce
Change the objinstance_xxxxx ID in MapStudio to that of your new Yapped Honey Bear or ParamStudio entry
Find Game\menu\text\english in your game directory
Unpack bonfirename.fmg with Yabber (drag it to Yabber.exe, not Yaabber.DCX.exe)
Edit the newly created bonfirename.fmg.xml
Find the row number you added in Yapped Honey Bear or ParamStudio and give it a name
Repack the .xml with Yabber into an .fmg
Replace bonfirename.fmg into your /menu/text/english/ folder
Go to Game\menu\tex\icon\bonfire_list, find the nearest bonfire to the one you made
Copy and paste this entry into a place of your choosing
Unpack the new ic_list_xxxxx.tpf with Yabber
Open the ic_list_xxxxx folder
Edit the .dds file with Gimp or a similar photo editing program
Take a picture of the bonfire area in game with hud off and binoculars on/Cheat Engine fly cam (You can press the PRT screen key on your keyboard for this)
Shrink your picture to roughly match the size of the existing .dds image
Use the eraser tool to lightly erase edges of the image to mimic the Dark Souls 2 format
Save and export as a .dds file
Place the .dds into the ic_list_xxxxx folder
Rename the .dds to use the number of the bonfire you made in Yapped Honey Bear or ParamStudio
Open the .xml in the ic_list_xxxxxx folder
Change the xxxxx portion in the filename and name sections ic_list_xxxxx.dds to the one you renamed it to
Save and repack the ic_list_xxxxx folder with Yabber
Rename and change the xxxxx portion to that of your bonfire name
Place the ic_list_xxxxx.tpf into your Game\menu\tex\icon\bonfire_list
Your bonfire should now work like any other including a custom image and name