Csharp struct, reading in xml at runtime, other minor questions

Hello, let me jump right into it

Is there a way to create a struct that i can use throughout my project?
e.i. i want to be able to do:

Mob myMob = new Mob();
myMob.hp = 100;
myMob.otherstats = whatever;

In any script throughout my project after defining struct mob
To do this in visual studio i would create a stand alone dll and add it into the refs but was hoping there would be a easier/cleaner way of doing this within mono.

Next big thing is i want to import XML(or any file) files after the game as started
e.i. i want to be able to create a file that has

<Mob>
<hp>100</hp>
<otherstats>whatever</otherstats>

etc etc.
And then import that at runtime to retrieve various things.

Not so important if it cannot be done would like to carry that out and be able to import entire zips
e.i. zip containing
Back drop image
Xml files with coords
etc etc
And be able to import and use that at runtime

And last thing at this very moment is drawing a circle without a transparent image… all i need is an o to appear around an object for about 2 seconds but i do not know what size the o will have to be until it happens at runtime. Pretty much i am looking to do a debug.drawline type of thing and load in an equation for a circle.

Very sorry if I’ve missed some obvious guide to do any of these but i have searched quite a bit and turn to here out of frustration. And on that note anybody who has a good guide on setting up resource folders i would greatly appreciate the link… tried to follow the manual and various threads but my resource folder never seems to work.

Thank you very much in advance for any help.

What do you mean by “create a struct that i can use throughout my project”? Just create a C# script “Mob” as you usually do for components and then change its code by replacing the class definition with your struct (you can also create struct and classes in other components/scripts, just declare them out of the component class).

About XML serialization/deserialization you would do as it usually works in any C#, using XML serializer/deserializer or manually parse through the nodes, just add using System.Xml on top of your script (you don’t need to manually add reference to System.Xml in your mono project). Of course you will store in the XML your gameobject/component settings, then at runtime you will instantiate a new gameobject and apply the settings retrieved from the XML node.

You, sir, are a god among men.

Looking so hard for the complicated answer i couldn’t see the forest for the trees.