For starters, this works with
~~ FULL CONVERSIONS ONLY ~~
This tutorial is here to help those who do not know how to apply a new custom lantern to their Full Conversion (FC) and would like to know. This tutorial assumes that you already have a FC set up with the config files and directories attached in the "FC_resources.cfg". Now... Let's get started shall we?
Step 1: Basics/directories
First thing you want to do is learn where to put everything. In this tutorial, I will be using my Oh Silent Night FC to outline directories....
Inside the FC_game.cfg is a section labeled "Player_lantern"... This is where you can set sway physics (swinging back and forth. You see this by looking up and down in-game while having the lantern out) on or off, change sounds, oil drain speed, etc. Play around with it!
Inside what is labeled as the "lantern.ho" in the "models" folder is what holds the necessary info to run the new lantern (or main one)... This will be needed in the "FC_models" folder later.
Now we need to set up an entity to pick up to GET the new lantern. Find the object you are going to use and open it in the Model Editor. In this tutorial, I will be using a black lantern I made/retextured. Go into the Model Editor and import/open the new lightsource, then go up to "User Defined Variables" and set Type to: 'Item' and set SubType to: 'Lantern'. Scroll all the way down to what is highlighted in the picture below and find an image for the inventory and if needed, a custom name for the new lantern. Naming it works the same as a key in the english.lang, like "ItemName_SUBNAME" and "ItemDesc_SUBNAME". An image of any sorts can be made, just keep it 60x60 pixels or lower. Here, I took the original lantern icon and colored it dark grey, and saved it in the FC folder (it can be saved anywhere inside a folder that is listed in the "FC_resources.cfg". The game will find the image on its own).
You need to make bodies for the mesh as well so it can be affected by gravity, be solid, sounds, physics, etc. Make a new folder in the root "entities" folder labeled whatever you would like. I will name mine "Black Lantern". Then save it in that folder as "FC_newlantern"... But keep the Model Editor open! We will now be making it as an object for the screen (what the hand holds).
Step 2: Setting up the new lantern
First, delete the bodies. This prevents colliding and any other issues. No screen lantern models that I have seen use bodies, so let's not fix something that isn't broken, you know? Then go up to "User Defined Variables" and change the Type to: "HandObject".
Now we need to position the new lantern in place. The lantern.ho states that the point of origin (the 0 point of all axis of the model) attaches to the "attachpoint" of the hand model. The attachpoint is located by the cuticles, in the middle of the palm. I positioned mine where necessary, so you can get an idea of how it will be placed. Also notice how I added the glow, as this will be glowing in screen, or else it won't make sense. Add some pointlights, maybe a halo, and you're set!
You should have a "FCNAME_models" folder in your full conversion. This is where your hands and hand_object (new lantern) will be.
Copy the "player" and "hand_objects" folders from the main redist "models" folder and paste them into your "FCNAME_models" folder. This is going to be our base. Now, go into "hand_objects > lantern" and delete everything in there BUT the "lantern.ho". Now go back to the model and save it in that folder as something NAMED DIFFERENTLY than the entity you pick up. Mine is "B_handheldlantern.ent"
Now open the lantern.ho in the FC_models and in the "Main" section, change "Model" to your directory. mine shows like this:
You may change around your settings however you would like. Save, add the item file in the map to pick up, and YOU'RE GOOD!