I think v6v mostly answered your questions, but I'll comment too in case my comments can add further benefit.
I would encourage you to use DrawCounterWithLabel to get the score displayed, and then you would only need to figure out how to get the value of one counter to represent the score based on the value in another counter (if you even need two separate counters). Is there any reason you couldn't simply update the score directly with the ChangeCounter function? If you need to update it more slowly, you can use ChangeCounter to change an invisible counter, and have it loop and use it with "If" to change another counter only once every time it loops. That way you could make the score change more slowly in relation to a counter that increments on every frame. I suspect whatever you want the score to do could be done without writing any code, but I'd need to know more about what you're trying to do to the score.
You may have to be more specific about what you mean by "text based counters". A counter implies a number, so I don't understand what you're asking for.
There are a couple ways to use C# code once you have it in the project. One way is to do as v6v suggests (if you are adding code to SpriteBase.cs, PlanBase.cs or GeneralRules.cs). Such functions, when added with a Description, will then show up in the Function dropdown list (if you don't have any errors) for the Sprite editor, Plan editor, or both respectively. The other way is to edit one of the other .cs files in the SourceCode folder of your project (in the IDE) and just call the function from other code that is already running at the time you want your code to be called. For example, if you write a function in MapBase.cs that writes some debug info to a file, you could call it from the DrawAllViews function in MapBase.cs, and then your function would run once on every frame. Not sure if that fully answers your questions, but hopefully gives you some idea.
Also, keep in mind that if you want your project to run as HTML you can't just add C# code, you would also need to add .js code.