First of all, I always find the CVS Browse feature on Sourceforge.net AWESOME for researching stuff like this. A direct link to the main stuff for the Emu can be found
here.
It looks like the data type in the packet is a float.
common/eq_packet_structs.h:
Code:
199 struct Spawn_Struct {
200 /*0000*/ uint8 unknown0000;
201 /*0001*/ uint8 gm; // 0=no, 1=gm
202 /*0002*/ uint8 unknown0003;
203 /*0003*/ int8 aaitle; // 0=none, 1=general, 2=archtype, 3=class
204 /*0004*/ uint8 unknown0004;
205 /*0005*/ uint8 anon; // 0=normal, 1=anon, 2=roleplay
206 /*0006*/ uint8 face; // Face id for players
207 /*0007*/ char name[64]; // Player's Name
208 /*0071*/ int16 deity; // Player's Deity
209 /*0073*/ uint16 unknown0073;
210 /*0075*/ float size; // Model size
Here is the code for the command itself:
zone/command.cpp
Code:
2273 void command_size(Client *c, const Seperator *sep)
2274 {
2275 if (!sep->IsNumber(1))
2276 c->Message(0, "Usage: #size [0 - 255]");
2277 else {
2278 float newsize = atof(sep->arg[1]);
2279 if (newsize > 255)
2280 c->Message(0, "Error: #size: Size can not be greater than 255.");
2281 else if (newsize < 0)
2282 c->Message(0, "Error: #size: Size can not be less than 0.");
2283 else
2284 if (c->GetTarget())
2285 c->GetTarget()->ChangeSize(newsize, true);
2286 else
2287 c->ChangeSize(newsize, true);
2288 }
2289 }
atof() should be converting it from a string to a float, so it looks like the problem is farther down the chain. Unfortunately, I have no idea where ChangeSize() is defined.