Added default profile for Korean Server 1 to the Patcher
A* Kod Implementation, about 50% complete.
Progress on A* stuff
fixed list bugs
Astar algorithm working, somewhat. still bugs to fix and adjustmenst to make.
Merge branch 'master' of https://github.com/Daenks/Meridian59_103 into AStarKod

Conflicts:
	patcher/ClientPatcher/PatcherSettings.cs
Astar.kod:
Restructured AStarPath creation

Astarnode.kod:
Added TryNewParent() to recalculate the Movement cost of a node

AstarPath.kod:
Reorganized algorthm order
Split FindNode() into FindClosedNode() and FindOpenNode() -- TODO: Replace with FindListElem()+Nth()
Fixed handling of already exiting nodes per A* algorithm
Added debug items
room.kod:
Replaced the CanMoveInRoomFineProxy with CanMoveInRoomProxy

astar.kod:
Replaced the calls to CanMoveInRoomFineProxy with CanMoveInRoomProxy
Added CalculatePath() to calculate the entire path in a loop
Added RecalculatePath() to recalculate path between two moved objects
Added End of path detection (both for success and impossible to reach)
Added RemoveDebugItems() to clean up all our apples and plate :D
Commented out most of the Debug() calls.
astarnode.kod:
Updated CalculateMovementCost(), Constructor(), and TryNewParent()
They now taka a diagonal parameter and add costs differently as such.
10 = Cardinal Movement
14 = Diagonal Movemtn
Updated CaclculateHeuresticCost() to use 10 for each square for
compatibility with diagonal Movement Cost

astarpath.kod:
added poNextMove for use in single-step movement
fixed plDebugItems handling and cleanup
added CalculateStep() for single-step movement
added diagonal calculations to ScanNode()

monster.kod:
added poAStarPath to hold our path object per-monster
modified MoveTowards(), checks if Astar enabled, if so, creates/uses an
astar path from current location with Astar.CalculateStep()
astarnode.kod: added Recreate()

astarpath.kod:
Finally fixed DebugItem handling
Removed adding oStartNode to the Closed list to prevent "backwards" bug
Removed RecalculatePath() as it was only for debug, and isnt used for it
Changed how CalculateStep works, instead of calculating one step each move
we now calculate the whole path, then grab the next step, remove it from
closed, and then follow it
Removed debug messages
monster.kod: modified comment to reflect new intent

astarpath: fixed infinite loop
astarpath.kod:

Increased path complexity limit
Added plHistory to re-use existing nodes
modified CreateNode() to use plHistory
modified FindNextMove() to use plHistory
astarnode:
added GetHeuristicCost() accessor

astarpath:
added some debug info
removed an unused line causing build errors
added second sort by Heurestic to FindLowestScores()
astarnode: added GetParent()

astarpath:
added classvars:
vbDebugItems = FALSE (enables/disabled debug apple placement)
viMaxStepCalc = 150 (maximum number of nodes allowed on the closed list before we call the path impossible and resort to old movement)
added properties:
poStartNode and poEndNode to keep track of the start and end objects
plPath to keep track of final path
Removed Debug() messages
Added proper path creation by grabbing each node from poEndNode's parents recursively
removed plHistory listnode recycling
First steps towards C Implementation.

blakeserv\memory.h:
added MALLOC_ID_ASTAR to track A* memory utilization

blakserv\makefile:
added reference for astar.obj

blakserv\ccode.c/h:
added C_CreatePath() validates inputs (oFrom, oTo), passes to CreatePath()

blakserv\sendmsg.c:
added C_CreatePath() to ccall_table

include\bkod.g:
added kod function ID for C_CreatePath()

blakserv\adminfn.c:
added CreatePath display name to C_Function lookup table

kod\util\astar.kod:
added TODO to mark where to call CreatePath() in the future, should return an AStarPath object, pre-filled with plPath

added files:
  blakserv\astar.c:
  CreatePath():
    creates the astarpath struct, that will be passed around to other A* functions and populates it
  ScanNode() stub
  CalculateMovementCost() added
  CalculateHeuristic() added
  CalculateScore() added

  blakserv\astar.h:
  added astarnode_struct as astar_node type
  added astarpath_struct as astarpath type
  added CreatePath() stub
Update to latest master
fix CalculateScore not being resolvable
blakserv\memory.c:
  added name for astar malloc id

blakcomp\function.c:
  added function to kod code to call C_CreatePath.
  Currently named CreateAstarPath() to not interfere with working kod code.

blakserv\astar.c:
  fixed parent detection in CalculateMovementCost()
  sending messages GetRow and GetCol so we can work with objects that dont store piRow and piCol

blakserv\astar.h:
  added definitions for array sizes

blakserv\ccode.c:
  removed comments that are no longer needed

kod\util\astar.kod
  added code to create some items to path between when none exist
  added call to CreateAstarPath() so there is an easy method to debug the C code
blakserv\astar.c & .h:
  refactored astarpath to astar_path because consistancy
blakcomp\fucntion.c:
  updated astarpath call to include more parameters

blakserv\astar.h:
  refactored path and node structs. nodes can now work as a linked list node
  removed ASTAR_GRID_SIZE and ASTAR_LIST_SIZE since we're using linked lists now
  updated CreatePath() stub because of the new parameters

blakserv\astar.c:
  moved node calculation functions, added prototypes
  added AddNodeToList() to add nodes to the end of the list
  added DebugPrintList() to print nodes in a list to debug
  updated CreatePath() to take start/end row/col and room ID
  in CreatePath():
    we now look up the roomdata in C with GetRoomDataByID()
    commented out old send-message code
    use AddNodeToList()
  in ScanNode():
    refactored xoff/yoff to be row/coloffset
    added basic scan node logic, needs checks for open/closed list presence and behave differently depending on what is found

blakserv\ccode.c:
  updated C_CreatePath() to take new Kod parameters

kod\util\astar.kod:
  removed CreateAstarPath() call

kod\util\astarpath.kod
  added CreateAstarPath() call with new parameters