General Movement Waypoints

Additional botting resources. Addons may be either for the game itself or for the RoM bot.
Forum rules
Only post additional bot resources here. Please do not ask unrelated questions.
Post Reply
Message
Author
BillDoorNZ
Posts: 446
Joined: Wed Aug 03, 2011 7:37 pm

General Movement Waypoints

#1 Post by BillDoorNZ » Sun Nov 06, 2011 7:40 pm

Hiyas,

Just creating this topic to share some of my general movement waypoints (running from location to location) in case anyone else actually finds any of this useful - I use RomBot slightly differently from most people in that I use it to run the game for me while I play (runs from from place to place etc) via a windows form client that talks to MM via a UDP connection. I have some of the areas in various zones mapped out (the ones I use anyway).

My application tracks where the character is and keeps a 'nearest waypoint' indicator (along with a crappy map I plot). What this lets me do is say things like:

* I want to go to the nearest: mailbox, AH, Housemaid, Bank, PetVendor, Vendor
* I want to go to a specific waypoint (e.g. Dog and Fly Daileys waypoint)

It then builds a waypoint file called newWP.xml and tells MM to load this new waypoint file and execute it. Which results in my character running to the specific location.

Because I have included teleport links, it is able to generate waypoints that use the transporters (including the one to Dalanis even tho I haven't unlocked that one yet - the npc is just invisible until unlocked). I'll just post some of the more generic / useful ones in the following posts.

BillDoorNZ
Posts: 446
Joined: Wed Aug 03, 2011 7:37 pm

Re: General Movement Waypoints

#2 Post by BillDoorNZ » Sun Nov 06, 2011 7:41 pm

Varanas Snoop to Robbie Butcher - Fly / Dog daileys NPC

I use this one a lot so I don't have to use transport runes etc due to laziness.

Code: Select all

<?xml version="1.0" encoding="utf-8"?><waypoints>
	<!-- #  01 --><waypoint x="2296" z="1154"  type="RUN" tag="Varanas Snoop">
player:target_NPC(111256); sendMacro("ChoiceOption(8)");waitForLoadingScreen(30);
</waypoint>
	<!-- #  02 --><waypoint x="-6346" z="-3887"  type="RUN" tag="Coast of Opportunity Snoop">
player:target_NPC(118002); sendMacro("ChoiceOption(1)");waitForLoadingScreen(30);
</waypoint>
	<!-- #  03 --><waypoint x="42" z="-1155"  type="RUN" tag="Lyonside Transporter">
player:target_NPC(118020); sendMacro("ChoiceOption(1)");waitForLoadingScreen(30);
</waypoint>
	<!-- #  04 --><waypoint x="-7414" z="1191"  type="RUN" tag="Desert Investigation Post Transporter">
player:target_NPC(118020); sendMacro("ChoiceOption(1)");waitForLoadingScreen(30);
</waypoint>
	<!-- #  05 --><waypoint x="-3" z="5025"  type="RUN" tag="Fangers Makeshift Camp Transporter">
player:target_NPC(118020); sendMacro("ChoiceOption(1)");waitForLoadingScreen(30);
</waypoint>
	<!-- #  06 --><waypoint x="982" z="13357"  type="RUN" tag="Ruins Research Snoop">
player:target_NPC(118002); sendMacro("ChoiceOption(1)");waitForLoadingScreen(30);
</waypoint>
	<!-- #  07 --><waypoint x="12874" z="1955"  type="RUN" tag="Transporter Jinners Camp">
player:target_NPC(118020); sendMacro("ChoiceOption(1)");waitForLoadingScreen(30);
</waypoint>
	<!-- #  08 --><waypoint x="6778" z="6313"  type="RUN" tag="Frontline Camp Transporter"></waypoint>
	<!-- #  09 --><waypoint x="6356" z="6178"  type="RUN" tag="50"></waypoint>
	<!-- #  10 --><waypoint x="6333" z="6111"  type="RUN" tag="51"></waypoint>
	<!-- #  11 --><waypoint x="6176" z="5562"  type="RUN" tag="52"></waypoint>
	<!-- #  12 --><waypoint x="6209" z="5420"  type="RUN" tag="53"></waypoint>
	<!-- #  13 --><waypoint x="6413" z="5441"  type="RUN" tag="Dog and Fly Daileys"></waypoint>
</waypoints>
Last edited by BillDoorNZ on Sun Nov 06, 2011 7:46 pm, edited 2 times in total.

BillDoorNZ
Posts: 446
Joined: Wed Aug 03, 2011 7:37 pm

Re: General Movement Waypoints

#3 Post by BillDoorNZ » Sun Nov 06, 2011 7:44 pm

Varanas Snoop to outside DOD

This one can probably do with some more attention around getting into the Dalanis Sewers themselves as sometimes due to deviations from the WP the character doesn't get teleported into the sewers.

Code: Select all

<?xml version="1.0" encoding="utf-8"?><waypoints>
	<!-- #  01 --><waypoint x="2296" z="1154"  type="RUN" tag="Varanas Snoop">
player:target_NPC(111256); sendMacro("ChoiceOption(3)");waitForLoadingScreen(30);
</waypoint>
	<!-- #  02 --><waypoint x="-20460" z="6507"  type="RUN" tag="Dustbloom Snoop"></waypoint>
	<!-- #  03 --><waypoint x="-20783" z="6209"  type="RUN" tag="Battle Transporter">
player:target_NPC(110530); sendMacro("ChoiceOption(4)");waitForLoadingScreen(30);
</waypoint>
	<!-- #  04 --><waypoint x="-21988" z="3654"  type="RUN" tag="Mercenary Transporter"></waypoint>
	<!-- #  05 --><waypoint x="-21907" z="3793"  type="RUN" tag="90 - (-21907, -166, 3793)"></waypoint>
	<!-- #  06 --><waypoint x="-21554" z="4038"  type="RUN" tag="91 - (-21554, -167, 4038)"></waypoint>
	<!-- #  07 --><waypoint x="-21486" z="4105"  type="RUN" tag="94 - (-21486, -166, 4105)"></waypoint>
	<!-- #  08 --><waypoint x="-21318" z="4357"  type="RUN" tag="95 - (-21318, -212, 4357)"></waypoint>
	<!-- #  09 --><waypoint x="-21019" z="4561"  type="RUN" tag="96 - (-21019, -211, 4561)"></waypoint>
	<!-- #  10 --><waypoint x="-20749" z="4357"  type="RUN" tag="97 - (-20749, -168, 4357)"></waypoint>
	<!-- #  11 --><waypoint x="-20613" z="4195"  type="RUN" tag="Port to Dalanis">
player:target_NPC(114777); sendMacro("ChoiceOption(2)");waitForLoadingScreen(30);
</waypoint>
	<!-- #  12 --><waypoint x="-4639" z="7600"  type="RUN" tag="Portal to OS"></waypoint>
	<!-- #  13 --><waypoint x="-4481" z="7587"  type="RUN" tag="104 - (-4481, 81, 7587)"></waypoint>
	<!-- #  14 --><waypoint x="-4407" z="7105"  type="RUN" tag="105 - (-4407, 94, 7105)"></waypoint>
	<!-- #  15 --><waypoint x="-4403" z="6854"  type="RUN" tag="106 - (-4403, 80, 6854)"></waypoint>
	<!-- #  16 --><waypoint x="-4224" z="6328"  type="RUN" tag="107 - (-4224, 85, 6328)"></waypoint>
	<!-- #  17 --><waypoint x="-4123" z="6024"  type="RUN" tag="108 - (-4123, 67, 6024)"></waypoint>
	<!-- #  18 --><waypoint x="-3762" z="6041"  type="RUN" tag="109 - (-3762, 67, 6041)"></waypoint>
	<!-- #  19 --><waypoint x="-3385" z="6228"  type="RUN" tag="110 - (-3385, 57, 6228)"></waypoint>
	<!-- #  20 --><waypoint x="-3257" z="6340"  type="RUN" tag="111 - (-3257, 59, 6340)"></waypoint>
	<!-- #  21 --><waypoint x="-3139" z="6510"  type="RUN" tag="112 - (-3139, 57, 6510)"></waypoint>
	<!-- #  22 --><waypoint x="-2943" z="6771"  type="RUN" tag="113 - (-2943, 53, 6771)"></waypoint>
	<!-- #  23 --><waypoint x="-2841" z="6925"  type="RUN" tag="114 - (-2841, 54, 6925)"></waypoint>
	<!-- #  24 --><waypoint x="-2800" z="7248"  type="RUN" tag="115 - (-2849, -69, 7248)"></waypoint>
	<!-- #  25 --><waypoint x="-2904" z="7237"  type="RUN" tag="Outside Dalanis Sewer"></waypoint>
	<!-- #  26 --><waypoint x="-2904" z="7237"  type="RUN" tag="Teleport into Dalanis Sewer Portal">
waitForLoadingScreen(30)
</waypoint>
	<!-- #  27 --><waypoint x="135" z="-820"  type="RUN" tag="Inside Dalanis Portal"></waypoint>
	<!-- #  28 --><waypoint x="37" z="-894"  type="RUN" tag="119 - (37, 869, -894)">
player:target_NPC(115572); sendMacro("ChoiceOption(1)");waitForLoadingScreen(30);
</waypoint>
	<!-- #  29 --><waypoint x="1645" z="-4909"  type="RUN" tag="Portal out"></waypoint>
</waypoints>

BillDoorNZ
Posts: 446
Joined: Wed Aug 03, 2011 7:37 pm

Re: General Movement Waypoints

#4 Post by BillDoorNZ » Sun Nov 06, 2011 7:49 pm

Central Plaza Teleporter (near Malatina) to Mailbox in Aslan (near GG npc)

I use this one when running mini-games to move from COT/Survival to get to GG NPC.

Code: Select all

<?xml version="1.0" encoding="utf-8"?><waypoints>
	<!-- #  01 --><waypoint x="4745" z="-1968"  type="RUN" tag="Central Plaza">
player:target_NPC(110726); sendMacro("ChoiceOption(4)"); waitForLoadingScreen(30);
</waypoint>
	<!-- #  02 --><waypoint x="2754" z="959"  type="RUN" tag="Bridge Teleporter"></waypoint>
	<!-- #  03 --><waypoint x="2489" z="1225"  type="RUN" tag="27"></waypoint>
	<!-- #  04 --><waypoint x="2296" z="1154"  type="RUN" tag="Varanas Snoop">
player:target_NPC(111256); sendMacro("ChoiceOption(5)");waitForLoadingScreen(30);
</waypoint>
	<!-- #  05 --><waypoint x="-5918" z="2880"  type="RUN" tag="Aslan Snoop"></waypoint>
	<!-- #  06 --><waypoint x="-5889" z="3056"  type="RUN" tag="78"></waypoint>
	<!-- #  07 --><waypoint x="-5854" z="3141"  type="RUN" tag="76"></waypoint>
	<!-- #  08 --><waypoint x="-5817" z="3176"  type="RUN" tag="75"></waypoint>
	<!-- #  09 --><waypoint x="-5840" z="3262"  type="RUN" tag="Mailbox"></waypoint>
</waypoints>

BillDoorNZ
Posts: 446
Joined: Wed Aug 03, 2011 7:37 pm

Re: General Movement Waypoints

#5 Post by BillDoorNZ » Sun Nov 06, 2011 7:52 pm

Outside Dalanis Sewers to Nebular Grey-Eye

I use this on to run to Nebular Grey-Eye to use memento's.

Code: Select all

<?xml version="1.0" encoding="utf-8"?><waypoints>
	<!-- #  01 --><waypoint x="-2904" z="7237"  type="RUN" tag="Outside Dalanis Sewer"></waypoint>
	<!-- #  02 --><waypoint x="-2800" z="7248"  type="RUN" tag="115 - (-2849, -69, 7248)"></waypoint>
	<!-- #  03 --><waypoint x="-2841" z="6925"  type="RUN" tag="114 - (-2841, 54, 6925)"></waypoint>
	<!-- #  04 --><waypoint x="-2943" z="6771"  type="RUN" tag="113 - (-2943, 53, 6771)"></waypoint>
	<!-- #  05 --><waypoint x="-3139" z="6510"  type="RUN" tag="112 - (-3139, 57, 6510)"></waypoint>
	<!-- #  06 --><waypoint x="-3257" z="6340"  type="RUN" tag="111 - (-3257, 59, 6340)"></waypoint>
	<!-- #  07 --><waypoint x="-3385" z="6228"  type="RUN" tag="110 - (-3385, 57, 6228)"></waypoint>
	<!-- #  08 --><waypoint x="-3762" z="6041"  type="RUN" tag="109 - (-3762, 67, 6041)"></waypoint>
	<!-- #  09 --><waypoint x="-4123" z="6024"  type="RUN" tag="108 - (-4123, 67, 6024)"></waypoint>
	<!-- #  10 --><waypoint x="-4179" z="5635"  type="RUN" tag="538 - (-4179, 36, 5635)"></waypoint>
	<!-- #  11 --><waypoint x="-4053" z="5203"  type="RUN" tag="537 - (-4053, 33, 5203)"></waypoint>
	<!-- #  12 --><waypoint x="-4042" z="5074"  type="RUN" tag="536 - (-4042, 14, 5074)"></waypoint>
	<!-- #  13 --><waypoint x="-4261" z="5050"  type="RUN" tag="Thunderhoof Snoop">
player:target_NPC(114353); sendMacro("ChoiceOption(4)");waitForLoadingScreen(30);
</waypoint>
	<!-- #  14 --><waypoint x="-6048" z="21508"  type="RUN" tag="SJF Snoop">
player:target_NPC(114353); sendMacro("ChoiceOption(4)");waitForLoadingScreen(30);
</waypoint>
	<!-- #  15 --><waypoint x="3570" z="31593"  type="RUN" tag="NJF Snoop">
player:target_NPC(114353); sendMacro("ChoiceOption(4)");waitForLoadingScreen(30);
</waypoint>
	<!-- #  16 --><waypoint x="3015" z="47708"  type="RUN" tag="Lymor Desert Snoop"></waypoint>
	<!-- #  17 --><waypoint x="2952" z="47767"  type="RUN" tag="523 - (2952, 138, 47767)"></waypoint>
	<!-- #  18 --><waypoint x="2952" z="47767"  type="RUN" tag="524 - (2952, 138, 47767)"></waypoint>
	<!-- #  19 --><waypoint x="2910" z="47882"  type="RUN" tag="525 - (2910, 148, 47882)"></waypoint>
	<!-- #  20 --><waypoint x="2910" z="47999"  type="RUN" tag="526 - (2910, 145, 47999)"></waypoint>
	<!-- #  21 --><waypoint x="2899" z="48127"  type="RUN" tag="527 - (2899, 145, 48127)"></waypoint>
	<!-- #  22 --><waypoint x="2899" z="48127"  type="RUN" tag="528 - (2899, 145, 48127)"></waypoint>
	<!-- #  23 --><waypoint x="2792" z="48206"  type="RUN" tag="529 - (2792, 145, 48206)"></waypoint>
	<!-- #  24 --><waypoint x="2687" z="48213"  type="RUN" tag="530 - (2687, 147, 48213)"></waypoint>
	<!-- #  25 --><waypoint x="2580" z="48242"  type="RUN" tag="531 - (2580, 148, 48242)"></waypoint>
	<!-- #  26 --><waypoint x="2580" z="48242"  type="RUN" tag="532 - (2580, 148, 48242)"></waypoint>
	<!-- #  27 --><waypoint x="2493" z="48306"  type="RUN" tag="533 - (2493, 146, 48306)">player:target_NPC(116627);</waypoint>
</waypoints>

User avatar
MiesterMan
Posts: 543
Joined: Tue Jul 06, 2010 9:15 pm
Location: Between the Second and Third Circles of Hell

Re: General Movement Waypoints

#6 Post by MiesterMan » Tue Nov 15, 2011 4:10 am

I'm a little confused, what is this? Looks interesting though I think I'm more interested in what you designed to record them. :twisted:

Looking forward to the details!

BillDoorNZ
Posts: 446
Joined: Wed Aug 03, 2011 7:37 pm

Re: General Movement Waypoints

#7 Post by BillDoorNZ » Tue Nov 15, 2011 5:57 am

Ah yes. The complicated part - typical dev :)

After a heap of fiddling, I wrote a .net (C#) winform app that communicates with MM via 2 udp servers - 1 in the C#app (I call it RomViewer), 1 in MM. Primary motivation was to allow me to play at work with the game window hidden and driven through RomViewer.

I then butchered bot.lua to create my own version that doesn't prompt for a waypoint file, but just puts the bot into Wander mode with a radius of 0 (i.e. allows me to run my character around while it still does everything else its meant to do). Its a rather ugly app, but it does what I need.

Over time I added more code to implement a protocol for conversations between MM and RomViewer. The startup process for RomViewer went something like this:

1) Start the UDP comms server on a specified Port (this matches a few profile settings that have added to my characters profile)
2) Create a tab for each default chat type (World, guild, zone, whisper etc) so that when we get the chat messages from mm (via rocks ingamefunction stuff for monitorings events) we can display them in the appropriate tab.
3) Request the characters inventory and player details (gets displayed on front tab)
4) Send a request to MM via the UDP comms server for the processId and window handle for MM and Client.exe (these are used later so I can hide the windows completely so they are not on the taskbar etc and so I can send keypresses to the game window to run ACS / DIYCE as I can get better performance for combat that way)
5) Request the execution path (execution directory for MM so I can get waypoint dir etc)

Once I had all that working, I created my own version of Waypoints (called GameNodes) so I could create a database of waypoints and join them together for pathing etc. To support that I modded my bot code to send back the players location all the time - this is then used to work out which GameNode the character is closest too. When I press Insert in RomViewer it adds a new GameNode at the current coordinates and links it to the 'last waypoint'.

Code: Select all

    public class GameNode
    {
        Vector3 _coordinates;
        int _id;
        string _name;
        List<GameObject> _gameObjects = new List<GameObject>();
        Zone _zone;
        List<GameNodeLink>  _gameNodeLinks = new List<GameNodeLink>();
    }

    public class GameNodeLink
    {
        GameNode _target;
        string _script;
    }


    public enum GameObjectType
    {
        None,
        VendorPet,
        VendorGeneral,
        AuctionHouse,
        Bank,
        Mailbox,
        Housemaid,
        Transporter
    }

    public class GameObject
    {
        List<GameObjectType> _objectTypes = new List<GameObjectType>();
        int _id;
        string _name;
        List<TransportLink> _transportLinks = new List<TransportLink>();
    }

    public class TransportLink
    {
        GameNode _destination;
        string _script;
    }

    public class Zone
    {
        private int _id;
        private string _name;
        private List<GameNode> _waypoints = new List<GameNode>();
    }
Basically each GameNode links to 1 or more GameNode(s) and has a list of known objects (NPCS / mailboxes etc) which may also link to other GameNodes via TransportLinks (snoops / transporters)

From all this, I then build a model of the world by creating another set of classes (shown here for the curious):

Code: Select all

    public class Waypoint
    {
        public GameNode Node;
        public Zone Zone = null;
        public Vector3 Coordinates;
        public int Id;
        public string Name;
        public Dictionary<int, WaypointLink> Links = new Dictionary<int, WaypointLink>();
        public List<GameObjectType> SupportsObjectType = new List<GameObjectType>();
        public Dictionary<GameObjectType, WaypointLink> NearestTypeLinks = new Dictionary<GameObjectType, WaypointLink>();


        public Waypoint(Zone zone, Vector3 coordinates, int id, string name)
        {
            Zone = zone;
            Coordinates = coordinates;
            Id = id;
            Name = name;
        }

        public Waypoint(GameNode node)
        {
            Id = node.Id;
            Name = node.Name;
            Coordinates = node.Coordinates;
            Node = node;
            Zone = node.Zone;
        }

        public WaypointLink AddLink(Waypoint destination, LinkStyle stlye)
        {
            WaypointLink result = new WaypointLink(this, destination, stlye);
            Links.Add(destination.Id, result);
            return result;
        }

        public WaypointLink AddLink(Waypoint destination, LinkStyle stlye, string script)
        {

            WaypointLink result = new WaypointLink(this, destination, stlye, script);
            Links.Add(destination.Id, result);
            return result;
        }

        public void SetNearestTypeWaypoint(GameObjectType gameType, WaypointLink link)
        {
            if (NearestTypeLinks.ContainsKey(gameType)) NearestTypeLinks.Remove(gameType);
            NearestTypeLinks.Add(gameType, link);
        }

        public override string ToString()
        {
            return Node.ToString();
        }

        public string ToRomBotXML(int num, string script)
        {
            string s = "";
            if ((script!=null) && (script.Length > 0))
            {
                s = Environment.NewLine + script + Environment.NewLine;
            }
            string result = string.Format("	<!-- #  {0:00} --><waypoint x=\"{1}\" z=\"{2}\"  type=\"RUN\">{3}</waypoint>", num, Coordinates.X, Coordinates.Z, s);
            return result;
        }
    }

    public class WaypointLink
    {
        public Waypoint Source { get; set; }
        public Waypoint Destination { get; set; }
        public LinkStyle Style { get; set; }
        public string Script { get; set; }
        public double Distance { get; set; }

        public WaypointLink(Waypoint source, Waypoint destination, LinkStyle style)
        {
            Source = source;
            Destination = destination;
            Style = style;

            if (style == LinkStyle.Walk)
                Distance = source.Coordinates.Distance(destination.Coordinates);
            else
                Distance = 1200;
        }

        public WaypointLink(Waypoint source, Waypoint destination, LinkStyle style, string script): this(source, destination, style)
        {
            Script = script;
        }

        public override string ToString()
        {
            string source = (Source != null) ? Source.Name : "unknown";
            string dest = (Destination != null) ? Destination.Name : "unknown";

            return source + " -> " + dest;
        }
    }

    public enum LinkStyle
    {
        Walk,
        Transport
    }

    public class InteractiveObject
    {
        public GameObject GameObject;
        public List<GameObjectType> ImplementsTypes = new List<GameObjectType>();
        public Dictionary<GameObjectType, string> TypeScripts = new Dictionary<GameObjectType, string>();
        public Dictionary<Waypoint, WaypointLink> TransportLinks = new Dictionary<Waypoint, WaypointLink>();

        public InteractiveObject(GameObject gameObject)
        {
            GameObject = gameObject;
            ImplementsTypes.AddRange(gameObject.ObjectTypes);
        }
    }
This stuff is generated when RomViewer starts and it then calculates the shortest route from each waypoint to the various types of objects so that when I want the character to go to a mailbox, it can build a path real fast. This path is then saved to a normal waypoint file and a message is sent to MM to tell it to load that waypoint file and the bot takes over from there :)

Once I had all that going I created a control to draw the map for me too so I can see whats going on etc and some code to send me back the current object list every now and again.

Then some more code to

* enable editing of the GameNodes
* rebuild the instance nodes from any changes
* enable and disable flyhack,
* use teleport,
* mount up
* send custom rom commands via a textbox. e.g. speed(70) etc.
* some stuff to keep a list of all players whenever they chat in zone/guild etc (does a sendMacro("AskPlayerInfo('playername')").
* display a list of RomObjects (from my db) that are at the current location with an 'interact' button
* display a list of all objects that are nearby (from the CObjectList stuff)
* run a thread in MM to pull back all chats etc and send on to RomViewer and vice versa
* hide/show the MM and Client.exe instance from view and on taskbar.
* send keypresses to Client.exe main window.
* store a set of commonly used custom commands for things as: chatting to housekeepers, summoning pet, feeding pet, turning in dailies, Configuring lootfilter, picking up eggs and cake from egg farmers

BillDoorNZ
Posts: 446
Joined: Wed Aug 03, 2011 7:37 pm

Re: General Movement Waypoints

#8 Post by BillDoorNZ » Tue Nov 15, 2011 6:31 am

Main screen (not connected as rom is undergoing maint)





Image

Node manager

Image

Editing a link in node manager
Image

Map
Image

User avatar
Zangetsu
Posts: 56
Joined: Fri Nov 11, 2011 5:45 pm

Re: General Movement Waypoints

#9 Post by Zangetsu » Tue Nov 15, 2011 9:46 am

This is a really nice work Bill!

I'm trying to do the same just with LUA scripts and commands sent from the game (using LUA and MySQL). But it looks your project is a way better, do you need help?

BillDoorNZ
Posts: 446
Joined: Wed Aug 03, 2011 7:37 pm

Re: General Movement Waypoints

#10 Post by BillDoorNZ » Tue Nov 15, 2011 12:15 pm

heh, I can updload the code at some point, its just terribly hacky atm :) (organically grown as it is) and there are a few'issues'.

- mainly on the design side of course (not so great decisions about how to implement something)

I might work on getting the code into a stable / readable / useable state and host it via SVN somewhere and let you know.

User avatar
Zangetsu
Posts: 56
Joined: Fri Nov 11, 2011 5:45 pm

Re: General Movement Waypoints

#11 Post by Zangetsu » Tue Nov 15, 2011 12:31 pm

BillDoorNZ wrote:heh, I can updload the code at some point, its just terribly hacky atm :) (organically grown as it is) and there are a few'issues'.

- mainly on the design side of course (not so great decisions about how to implement something)

I might work on getting the code into a stable / readable / useable state and host it via SVN somewhere and let you know.

Cheers!
For my part, i'm stuck :lol:

BillDoorNZ
Posts: 446
Joined: Wed Aug 03, 2011 7:37 pm

Re: General Movement Waypoints

#12 Post by BillDoorNZ » Tue Nov 15, 2011 6:14 pm

Source code is all at

Code: Select all

http://romviewer.googlecode.com/svn/trunk

Post Reply

Who is online

Users browsing this forum: Ahrefs [Bot] and 2 guests