Characters / Starting Locations (0xA9)
- Status:
implemented - Direction:
Server - Length:
Variable - POL reference: https://docs.polserver.com/packets/index.php?Packet=0xA9
- Last modified in POL docs:
2011-10-25 16:50:42byTomi
Moongate Packet Classes
CharactersStartingLocationsPacket(Outgoing, Variable, length-1) fromsrc/Moongate.Network.Packets/Outgoing/Login/CharactersStartingLocationsPacket.cs
Current Moongate Behavior
Moongate currently has packet classes for this opcode.
Packet Build
| Type | Field |
|---|---|
BYTE[1] |
cmd |
BYTE[2] |
packet length |
BYTE[1] |
number of characters (slots 5, 6 or 7) |
loop characters (5, 6 or 7):
| Type | Field |
|---|---|
BYTE[30] |
character name |
BYTE[30] |
character password |
endloop(characters)
| Type | Field |
|---|---|
BYTE[1] |
number of starting locations (cities) |
IF Client Version >= 7.0.13.0
loop # of cities:
| Type | Field |
|---|---|
BYTE[1] |
locationIndex (0-based) |
BYTE[32] |
city name(general name) |
BYTE[32] |
area of city or town |
BYTE[4] |
City X Coordinate |
BYTE[4] |
City Y Coordinate |
BYTE[4] |
City Z Coordinate |
BYTE[4] |
CIty Map ( Probably Map ID same as in mul files have to make sure ) |
BYTE[4] |
Cliloc Description |
BYTE[4] |
Always 0 |
endloop(# of cities)
ELSE
loop # of cities:
| Type | Field |
|---|---|
BYTE[1] |
locationIndex (0-based) |
BYTE[31] |
city name(general name) |
BYTE[31] |
area of city or town |
endloop(# of cities)
| Type | Field |
|---|---|
BYTE[4] |
Flags (see notes) |
IF SA ENCHANCED CLIENT
| Type | Field |
|---|---|
BYTE[2] |
Last Character Slot ( for highlight ) |
Subcommand Build
N/A
Notes
Flags list:
| Name | Value |
| --- | --- |
| 0x01 | unknown |
| 0x02 | send config/req logout (IGR?, overwrite configuration button?) |
| 0x04 | single character (siege - limit 1 character/account) |
| 0x08 | enable npcpopup/context menus |
| 0x10 | limit character slots? |
| 0x20 | enable common AOS features (tooltip thing/fight system book, but not AOS monsters/map/skills, necromancer/paladin classes) |
| 0x40 | 6th character slot |
| 0x80 | samurai and ninja classes |
| 0x100 | elven race |
| 0x200 | KR support flag1 ? |
| 0x400 | send UO3D client type (client will send 0xE1 packet) |
| 0x800 | unknown |
| 0x1000 | 7th character slot, only 2D client |
| 0x2000 | unknown (SA?) |
| 0x4000 | new movement packets 0xF0 -> 0xF2 |
| 0x8000 | unlock new felucca areas |
Flags can be combined as literals to view. Such as to have NPC Popup Menus AND Common AOS Features, send as 0x28, not 0x8 plus 0x20 form.
Another example: elven race, samurai classes and AOS will be 0x1A0.
0x8000 flag is used for unlocking new Felucca factions areas, note that you have to use "_x" versions of map/statics if you want to move through new areas.
Since 7.0.13.0 City Name and Building Name have length of 32 chars, also added city x,y,z,map,cliloc description and BYTE[4] always 0 to city structure.