Adding things to your game in CE is simple as can be! With the map window up, at the top of your screen you will see a box with a number of buttons. Do not be afraid! These buttons are here to help. The top row has the buttons "Edit map" and "Edit entities". Entities are all the different things that make up the game - Enemies, characters, saves, doors, even some decorative things (red flowers for instance). When in "Edit entities" mode, simply right click anywhere on your map and press "Add entity". Alternative, you move your cursor box to the desired location and press the insert button.
You have just created a null entity - this entity is basically nothing, and does nothing. To choose what NPC you want to appear, click the entity (if it is not already selected) and the entity menu will appear, next to the buttons from before. Select the "Entity type" dropdown menu, and you will be confronted with a list of every NPC in the entire game. Simply select the desired thing, and you're well on your way. Let's say for example we wanted a sign on our new map; We would select number 37, the signpost.
That's all well and dandy, but this entity still does nothing! We need to set it's Flags. Flags are things that I can't explain other than to say they are important and will ruin everything most of the time. Below the entity list, you see three editable fields: Entity ID, Event #, and Flags. You could manually type in the number into Flags, but the easy way is to press the button "Flag details" underneath. This will bring up a menu with all of the possible flag combinations we can work with. Of particular interest to us are 0x0800, 0x2000, and 0x4000. Flag 2000 is what you will use most of the time to make your entity DO something. When it is set, the entity will run it's script whenever the player tries to interact with it. The other two are useful for sequencing events and making sure when something is gone it stays gone, or does not appear until we need it to, but that's for later.
So, let's set our sign with flag 2000. Great! It will now run it's script when the player uses it. But, uh... What is that script??? Well, this is where Event # comes in. Everything that happens in the game has an event in the script, and this event number tells the computer what part of the script to read. It's best to choose reasonably small numbers, but always larger than 100 because smaller than that are "Global events" in the file head.tsc
To look at the script for our map, press the menu button "Map" in the top right and from the dropdown select "Edit script". Whoah! Wild Script Editor appears! Don't panic. This is the TSC - It's what modding is all about. On the right you have the infinitely handy list of TSC functions - Look through them, you'll have to know how most of them work to do any serious modding. For now, let's focus on our sign. First, we need to create an event for it. To do that, we need to give it a number. The numbers in the script followed by the # symbol are the event numbers of all the other events on the map. These are great to read and learn from, since they at least are guaranteed to work. Anyway, pick somewhere to put your event. Why not... 187? Go into your script, and put in #0187 on a new line. However! There are rules. You absolutely MUST have the numbers in order, and you MUST use four digits in the number.
Alright, so now the script knows where to read from, let's give it some instructions! If we're reading a sign, we don't want the player able to keep jumping around all over the place, so let's start with <KEY on the line right after your event #. <KEY locks player input until <END, alright, sounds good. Now, we want our sign to say something, right? So, we use the command <MSG right after <KEY. Now, we can type some text in - just like that! - and it'll pop up in a nice little box at the bottom. Be careful, because if you make it too long, it'll scroll right out of your box. Use the enter key just as you would regularly typing. Let's say "Hello World!" for our sign.
Now, you've got a sign, and it'll display some text. An important thing to remember is we want a player controlled pause in the text, so if they're not so quick they have time to read it at their leisure. To do this, we simply place the command <NOD at the end of our text. This makes it wait for the press of the button before moving on. We're done with our sign now, so the last thing we need to do is finish the event. All events need to end with the <END command, unless they jump somewhere else before they finish like with <TRA or <EVE. So, put the <END on and we're done! To summarize, it should look like this:
#0187
<KEY<MSGHello World!<NOD<END
You have just created your first entity. Congratulations! Now, press the save button on your Script editor, and close it. The last thing we need to do is give the appropriate event # to our Entity, so, select it again, and type 187 into it's Event # box. Now, save the map, close it up, and give it a test so you can see the result of all your hard work.