id,node_id,number,title,user,state,locked,assignee,milestone,comments,created_at,updated_at,closed_at,author_association,active_lock_reason,draft,pull_request,body,reactions,performed_via_github_app,state_reason,repo,type 204506877,MDU6SXNzdWUyMDQ1MDY4Nzc=,9,Rework packet pipe,6111341,closed,0,,,3,2017-02-01T06:26:07Z,2017-02-21T12:34:45Z,2017-02-21T12:34:45Z,CONTRIBUTOR,,,,Rewrite packet and fragment handling to delay and allow for combining outgoing fragments.,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/9/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 204803198,MDExOlB1bGxSZXF1ZXN0MTA0Mjg4NDkw,11,"Run faster, jump higher, teleport to coordinates (rather than XYZ position)",22650655,closed,0,,,2,2017-02-02T07:42:55Z,2017-02-03T20:59:39Z,2017-02-03T20:59:39Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/11,"These values are hardcoded and need to be replaced with actual values from the Player object. This is mainly to let people run around faster in the emu until code it put in to send all player skills to client. I'm Xen on Discord.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/11/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 205040357,MDU6SXNzdWUyMDUwNDAzNTc=,12,Converting ACE to run as a Windows service,25518589,closed,0,,,3,2017-02-03T00:36:14Z,2017-12-04T14:28:36Z,2017-12-04T14:28:36Z,CONTRIBUTOR,,,,"Envisioning how this server will eventually be run and/or deployed, I suspect that most would like the opportunity to have the server run as a Windows service. This will allow automated starting of ACE at Windows startup. This will require a separate monitoring application to monitor any ""console"" output. I offer this only from a sysadmin point of view who has an aversion to having to interactively start applications which others use. I'm not sure what architectural changes will be required, but thought it would be worth mentioning early in the development process.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/12/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 205077117,MDExOlB1bGxSZXF1ZXN0MTA0NDc4ODUx,13,database layer encapsulation and abstraction,25351661,closed,0,,,1,2017-02-03T05:44:27Z,2017-02-04T05:55:04Z,2017-02-04T05:54:55Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/13,"Sorry about the solution file. I'm on VS 2015 pro and I've no idea why it changed. All I did was add the .gitignore as a solution item. Use Visual Studio to diff the files. Git isn't doing a good job with the compare. Mogwai in Discord.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/13/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 205270553,MDExOlB1bGxSZXF1ZXN0MTA0NjEyNDcz,14,Added /teleto command,22650655,closed,0,,,1,2017-02-03T21:12:15Z,2017-02-05T02:21:27Z,2017-02-05T02:21:27Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/14,My commit has the wrong command in it. I added the /teleto command for teleporting using coordinates.,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/14/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 205301887,MDU6SXNzdWUyMDUzMDE4ODc=,15,Password storage should use PBKDF2,570040,closed,0,570040,,0,2017-02-03T23:56:22Z,2017-10-24T22:59:59Z,2017-10-24T22:59:59Z,CONTRIBUTOR,,,,"Right now it's using salted SHA256, which works for now but isn't suitable for real password storage, taking into considerations things like password reuse across services and the fact that inexperienced server admins will likely be operating poorly configured ACEmulator servers. To minimize the damage of leaking any password hashes from the DB, the supported standard for password storage on .NET is PBKDF2. I am already working on converting password storage to use PBKDF2 on my branch. https://dusted.codes/sha-256-is-not-a-secure-password-hashing-algorithm","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/15/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 205326043,MDExOlB1bGxSZXF1ZXN0MTA0NjUwNTg2,16,database abstraction and encapsulation. created character model and skill attribute models.,25351661,closed,0,,,0,2017-02-04T05:57:10Z,2017-02-04T06:42:11Z,2017-02-04T06:42:11Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/16,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/16/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 205328952,MDExOlB1bGxSZXF1ZXN0MTA0NjUxOTE3,17,database encapsulation is done! yay!,25351661,closed,0,,,0,2017-02-04T06:55:34Z,2017-05-30T15:34:08Z,2017-02-04T07:13:27Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/17,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/17/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 205346915,MDU6SXNzdWUyMDUzNDY5MTU=,19,Support logging off to the character selection screen. ,25125434,closed,0,10608427,,1,2017-02-04T13:07:05Z,2017-06-22T07:59:06Z,2017-06-22T07:59:06Z,CONTRIBUTOR,,,,Currently the only way to log into the world with a different character is to restart the client. ,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/19/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 205353528,MDU6SXNzdWUyMDUzNTM1Mjg=,20,Server should have a way to apply DB migrations,570040,closed,0,,,7,2017-02-04T15:19:26Z,2017-12-04T14:30:37Z,2017-12-04T14:30:36Z,CONTRIBUTOR,,,,"The server should have a way to track which DB migrations it has applied, and automatically apply missing ones in the correct order. @Mag-nus suggested a naming convention of `YYYY_MM_DD_tablename.sql`. This would work, but would make dealing with pull requests and merges annoying, if multiple came in one day. I would suggest a naming scheme more along the lines of `$patchNumber + '_' + $YYYY_MM_DD + '_' + $descriptiveFeatureName`, for example `01_2017_02_03_add_monster_information.sql` and not limiting them to any particular tables. Picking the second naming system will make dealing with pull requests easier and help developers understand what updates are for. Additionally, the leading number provides a good way of tracking our schema revision.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/20/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 205361124,MDExOlB1bGxSZXF1ZXN0MTA0NjY4MTI0,21,Change password hashing to use scrypt,570040,closed,0,,,4,2017-02-04T17:28:50Z,2017-03-20T02:20:14Z,2017-03-20T02:20:14Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/21,"I switched the password hashing over to use libsodium's scrypt implementation. This involved adding a new migration. I noticed that currently the password isn't checked. I started looking into how to implement password checking and it looks like we will probably need to have a launcher to do so. The reason the commit touches so many files is because it also cleans up the files with mixed line endings.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/21/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 205362379,MDExOlB1bGxSZXF1ZXN0MTA0NjY4ODA4,22,Teleloc loader fix and basic set of locations,10677293,closed,0,,,0,2017-02-04T17:48:51Z,2017-02-04T22:11:12Z,2017-02-04T22:11:12Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/22,"Fixed an index bug in `WorldDatabase.GetLocations` and added a basic set of telelocations to the `teleport_location` table for use with `teleloc`. Updated the `teleloc` command to accept multiple name locations, such as `Ayan Baqur`.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/22/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 205377812,MDExOlB1bGxSZXF1ZXN0MTA0Njc1ODg4,23,Add Config.json to .gitignore,570040,closed,0,,,1,2017-02-04T21:12:57Z,2017-02-04T22:53:44Z,2017-02-04T22:53:44Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/23,"This also forces first-time configuration. Existing Config.json copied to Config.json.example README.md has been updated with instructions.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/23/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 205394658,MDExOlB1bGxSZXF1ZXN0MTA0Njg0NDkw,29,Teleto command redo,22650655,closed,0,,,1,2017-02-05T02:20:42Z,2017-02-05T06:01:09Z,2017-02-05T06:01:09Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/29,Fixed coding convention issues with my previous commit.,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/29/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 205400067,MDU6SXNzdWUyMDU0MDAwNjc=,31,"Logs should go to separate window, and filesystem",570040,closed,0,,,4,2017-02-05T04:33:21Z,2017-05-01T15:13:20Z,2017-05-01T15:13:20Z,CONTRIBUTOR,,,,"Logs should go in a separate window from the main `ACE >>` command prompt so admins aren't frustrated with information stomping commands as they're being typed. Might as well add a `Config.json` option to log them to the filesystem and set verbosity at the same time.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/31/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 205404593,MDExOlB1bGxSZXF1ZXN0MTA0Njg5NDQ3,33,Added /teleto command,22650655,closed,0,,,0,2017-02-05T06:16:08Z,2017-02-06T12:17:24Z,2017-02-06T12:17:24Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/33,"Z position needs to be calculated from a file but since that isn't in the code yet, I'm defaulting it to 200. For some places that is not high enough and you'll be in darkness, but at least this allows you to teleport using coordinates.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/33/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 205449659,MDExOlB1bGxSZXF1ZXN0MTA0NzEyNjY4,36,Add automatic database migrations to startup,570040,closed,0,,,6,2017-02-05T20:02:19Z,2017-04-06T12:11:16Z,2017-04-06T12:11:16Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/36,"Database migrations will automatically be run. Name them according to the format (`#_YYYY-MM-DD-descriptive_name.sql`) and put in the appropriate directory and it will run on the next server startup. Migrations are only run once, in ascending numeric order. The current database state is tracked in a new database called `Global`. This simplifies server setup: now the only step is to create the four databases. The base SQL and migrations will be run automatically from that point on. This also simplifies migrations, which will no longer need to incorporate complex conditional logic in order to be repeatable.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/36/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 205511107,MDU6SXNzdWUyMDU1MTExMDc=,39,Friends list functionality,22650655,closed,0,22650655,,0,2017-02-06T08:04:22Z,2017-02-18T04:46:34Z,2017-02-18T04:46:34Z,CONTRIBUTOR,,,,"+ Persist/read friends from db table + Send full friends list on login + Respond to Add friend client message + Respond to Remove friend client message Likely not able to add yet until multiplayer support added: + When player logs on or off, send friend status update to their friends.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/39/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 205579650,MDU6SXNzdWUyMDU1Nzk2NTA=,41,Basic Player Item Functionality,6111341,closed,0,,,1,2017-02-06T13:12:45Z,2017-12-04T14:29:14Z,2017-12-04T14:29:14Z,CONTRIBUTOR,,,,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/41/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 205637204,MDU6SXNzdWUyMDU2MzcyMDQ=,42,Subscription data model concept + GLS replacement,25351661,closed,0,25351661,,1,2017-02-06T16:28:44Z,2017-10-24T22:59:32Z,2017-10-24T22:59:32Z,CONTRIBUTOR,,,,"Login == account retail ""AC account"" == subscription (under the hood, as Turbine did it) subscription == a set of characters on worlds Old/retail paradigm: 1 login for every subscription New paradigm: 1 master login, select a subscription This will entail building a set of REST services and a new launcher with Thwargle.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/42/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 205645250,MDU6SXNzdWUyMDU2NDUyNTA=,43,Move Database Access and object models to a separate C# project,25351661,closed,0,25351661,,2,2017-02-06T16:55:25Z,2017-02-16T03:26:54Z,2017-02-16T03:26:54Z,CONTRIBUTOR,,,,"for reuse in other components such as: * Item Editor * Vendor Editor * GLS replacment * other Server Admin tools","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/43/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 205742481,MDExOlB1bGxSZXF1ZXN0MTA0OTA3NjM3,46,Update create_mysql.sql,25277356,closed,0,,,0,2017-02-06T23:46:04Z,2017-02-12T11:36:42Z,2017-02-12T11:36:42Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/46,"Added ""IF NOT EXISTS"" to the create statements so that if the database already exists then a warning will be thrown instead of an error.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/46/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 205792049,MDExOlB1bGxSZXF1ZXN0MTA0OTQwNjI2,47,Load saved characters,25351661,closed,0,,,1,2017-02-07T05:43:40Z,2017-05-30T15:34:10Z,2017-02-07T16:49:01Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/47,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/47/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 205882576,MDU6SXNzdWUyMDU4ODI1NzY=,48,Add all other properties to Character persistence model,25351661,closed,0,25351661,,1,2017-02-07T13:09:34Z,2017-02-10T19:06:40Z,2017-02-10T19:06:40Z,CONTRIBUTOR,,,,"All the other things that go in the property buckets. Read from client on char create (or not, as the augments should all be unset), save to the DB, and load them up on login.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/48/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 205882786,MDU6SXNzdWUyMDU4ODI3ODY=,49,XP expenditure on skills/stats,25351661,closed,0,25351661,,1,2017-02-07T13:10:24Z,2017-02-10T19:06:01Z,2017-02-10T19:06:01Z,CONTRIBUTOR,,,,"Spend unused xp on skills/stats, save to database.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/49/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 206401863,MDExOlB1bGxSZXF1ZXN0MTA1MzU4NDQ2,50,"Spending XP in Abilities, Vitals, and Skills, Saving Property buckets…",25351661,closed,0,,,0,2017-02-09T04:35:43Z,2017-05-30T15:34:11Z,2017-02-10T18:44:23Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/50,"…. /grantxp command, moved persistence out of Player object for later refactoring of entity and data access project.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/50/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 206403228,MDU6SXNzdWUyMDY0MDMyMjg=,51,Saving a Character to the DB,25351661,closed,0,25351661,,5,2017-02-09T04:47:27Z,2017-03-20T02:53:25Z,2017-03-20T02:53:25Z,CONTRIBUTOR,,,,intermittently? on logout? by command? something,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/51/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 206403292,MDU6SXNzdWUyMDY0MDMyOTI=,52,Leveling up when granted xp,25351661,closed,0,25351661,,2,2017-02-09T04:47:53Z,2017-03-20T02:54:03Z,2017-03-20T02:54:03Z,CONTRIBUTOR,,,,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/52/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 206403348,MDU6SXNzdWUyMDY0MDMzNDg=,53,"Skill Credits: saving, loading, spending",25351661,closed,0,25351661,,2,2017-02-09T04:48:15Z,2017-03-20T14:32:29Z,2017-03-20T14:31:26Z,CONTRIBUTOR,,,,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/53/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 206407101,MDExOlB1bGxSZXF1ZXN0MTA1MzYxMzA3,54,Added friends list functionality.,22650655,closed,0,,,1,2017-02-09T05:14:37Z,2017-02-17T08:00:32Z,2017-02-17T08:00:32Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/54,"Friends load from database on login and add/removing friends also saves to the db. When a friend logs on, the player should see the status change to online but it's hard to test that completely right now. Changing the status to offline when a friend logs off is not yet implemented. I had to implement a couple methods in WorldManager to be able to query for connected clients. ","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/54/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 206955987,MDU6SXNzdWUyMDY5NTU5ODc=,56,Background maintenance thread,25125434,closed,0,,,1,2017-02-11T04:03:13Z,2017-07-26T16:50:59Z,2017-07-26T16:50:59Z,CONTRIBUTOR,,,,We need some sort of low priority thread to run and periodically perform routine maintenance tasks such as removing characters marked for deletion.,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/56/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 207021510,MDExOlB1bGxSZXF1ZXN0MTA1Nzc1MjI4,59,Handle setting title from client and updating title from server,25618389,closed,0,,,0,2017-02-12T01:28:07Z,2017-02-16T03:21:35Z,2017-02-16T03:21:34Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/59,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/59/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 207414071,MDExOlB1bGxSZXF1ZXN0MTA2MDMyNjEw,61,project separation and xp chart files,25351661,closed,0,,,0,2017-02-14T04:18:31Z,2017-05-30T15:34:11Z,2017-02-16T03:04:34Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/61,implements #43 and also moves all that xp chart data into json files loaded behind a database interface.,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/61/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 207544982,MDExOlB1bGxSZXF1ZXN0MTA2MTI1NjQy,62,just adding stylecop as a style ruleset with very basic stuff,25351661,closed,0,,,0,2017-02-14T15:19:35Z,2017-05-30T15:34:12Z,2017-02-16T03:14:13Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/62,the team can review the options and make changes as necessary.,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/62/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 207616123,MDU6SXNzdWUyMDc2MTYxMjM=,63,Save & reload window positioning,25351661,closed,0,,,0,2017-02-14T19:42:36Z,2017-07-26T16:50:45Z,2017-07-26T16:50:45Z,CONTRIBUTOR,,,,"Chat window(s), character info / inventory panel, etc. Logging this as people are constantly asking for stuff that can be done.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/63/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 208003996,MDExOlB1bGxSZXF1ZXN0MTA2NDQ4MzI3,64,fixing merge conflict,25351661,closed,0,,,0,2017-02-16T03:26:33Z,2017-02-16T03:26:38Z,2017-02-16T03:26:38Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/64,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/64/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 208004873,MDExOlB1bGxSZXF1ZXN0MTA2NDQ4ODAw,65,copy config.json as build step,25351661,closed,0,,,0,2017-02-16T03:32:21Z,2017-02-16T03:32:25Z,2017-02-16T03:32:25Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/65,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/65/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 208364550,MDExOlB1bGxSZXF1ZXN0MTA2Njg0MzU2,69,Friends List,22650655,closed,0,,,0,2017-02-17T07:58:52Z,2017-02-18T04:38:34Z,2017-02-18T04:38:34Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/69,"Adds the ability to add/remove friends as well as see the list of friends when you log on. The status is also accurate and will change as friends log on/off. I added a Logout method to the Player class for putting stuff in there that needs to be done when a player logs off (like sending a packet to all your online friends that you are offline). The extra commits are due to rebasing. This resolves issue #39.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/69/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 208542386,MDExOlB1bGxSZXF1ZXN0MTA2ODAyODE1,70,"code cleanup, plus introduction of a couple new world object heirarchy types",25351661,closed,0,,,0,2017-02-17T20:06:05Z,2017-05-30T15:34:17Z,2017-02-17T20:20:43Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/70,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/70/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 208612243,MDExOlB1bGxSZXF1ZXN0MTA2ODQ4MTI1,71,Issue 39 friends list,22650655,closed,0,,,0,2017-02-18T04:40:22Z,2017-02-18T04:46:34Z,2017-02-18T04:46:34Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/71,Resolves #39 ,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/71/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 208614354,MDU6SXNzdWUyMDg2MTQzNTQ=,72,Additional Friends Commands and Appear Offline,22650655,closed,0,22650655,,0,2017-02-18T05:29:14Z,2017-02-18T13:14:26Z,2017-02-18T13:14:26Z,CONTRIBUTOR,,,,"Implement the following @friends commands: 1. @friends remove -all 2. @friends old (show a message that this command is no longer used) Also implement the ""Appear Offline"" option so that it shows you as offline to your friends.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/72/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 208616825,MDExOlB1bGxSZXF1ZXN0MTA2ODUwMjA5,73,Network Refactor,12808515,closed,0,,,2,2017-02-18T06:02:43Z,2017-02-18T15:08:24Z,2017-02-18T15:08:24Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/73,"Created GameMessage class. Currently GameEvent inherits from GameMessage. GameMessage just build MemoryStream for message. Moved all opcodes that are outside of GameEvent in protocol over to be a GameMessage. Created some basic (test) functions in NetworkManager to send the GameMessages. Lots more to do, but this compiles and logs in successfully. Need to move group to per message property. Need to create per session packet queue. Need to rewrite packet pipe to better process multifragment packets. Need to finish testing multifragment packets and get working.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/73/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 208624156,MDExOlB1bGxSZXF1ZXN0MTA2ODUzNzQw,74,"Implemented ""/friends remove -all"", ""/friends old"" and Appear Offline.",22650655,closed,0,,,0,2017-02-18T08:15:49Z,2017-02-18T13:14:27Z,2017-02-18T13:14:27Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/74,"/friends old just sends a chat packet saying that the command isn't used in the emu. I also had to fix a bug in two WorldManager methods that I added in an earlier PR. There was a scenario where the Session.Player was null and it was causing the LINQ query to throw an exception. Appear Offline is actually part of a GameAction that is used for setting many different options. The Handle method for it now just has a switch in it (there are ~52 options) for now but we may want to go to something else in the future as we add new features. Resolves #72 ","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/74/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 208656503,MDExOlB1bGxSZXF1ZXN0MTA2ODY5NjIw,76,Reworked Appear Offline functionality,22650655,closed,0,,,1,2017-02-18T17:33:27Z,2017-02-20T05:17:46Z,2017-02-20T05:17:46Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/76,"Reworked appear offline functionality so that it doesn't change IsOnline, which other things might depend on. Also fixed issue with sending friends list updates that was introduced with the network refactor merge.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/76/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 208972136,MDU6SXNzdWUyMDg5NzIxMzY=,80,Saving and Loading Character Options,22650655,closed,0,22650655,,0,2017-02-20T20:10:20Z,2017-03-02T13:51:44Z,2017-03-02T13:51:44Z,CONTRIBUTOR,,,,"1. Save options in the database 2. Load options from the database 3. Send options in the GameEventPlayerDescription packet ","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/80/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 209201688,MDU6SXNzdWUyMDkyMDE2ODg=,83,Add message buffering and send as multifragment packet,12808515,closed,0,12808515,,1,2017-02-21T16:38:59Z,2017-02-27T14:41:27Z,2017-02-27T14:41:26Z,CONTRIBUTOR,,,,"Continue reworking network pipe to support message buffering and flushing from Session.Update to send as a multifragment packet. - NetworkBuffer class to queue messages during a timeslice - NetworkBuffer will have a current NetworkBundle which will contain all messages and optional flags. - On a session update, create new NetworkBundle and use the previous one to send packets. - Move certain packet flag responses (Echo, TimeSync, etc) to be sent with a NetworkBundle. - Create NetworkManager function to send a NetworkBundle, splitting large messages into two packets, or combining multiple messages into one packet. - - This function should take a NetworkBundle and create packets and fragments as appropriate to send all messages.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/83/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 209354215,MDExOlB1bGxSZXF1ZXN0MTA3MzM2NDQ4,84,"Skill spend upper bound check too prevent xp crash, also Max Skills!",37453,closed,0,,,5,2017-02-22T05:09:25Z,2017-03-02T13:03:44Z,2017-03-02T13:03:43Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/84,"Added an Ability and Skill check in Source/ACE/Entity/Player.cs, too attempt in preventing server from crashing when spending XP points.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/84/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 209752794,MDExOlB1bGxSZXF1ZXN0MTA3NjE4MjA1,85,Network Channels + Player Effect to Test @effect 20,25387933,closed,0,,,0,2017-02-23T12:51:12Z,2017-02-23T13:41:57Z,2017-02-23T13:41:57Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/85,"Forgive my get newb.. I added a method of picking your channels on each message type.. Example of creating a message with channel can be found.. ``` public class GameMessageEffect : GameMessageOnChannel //using the ChannelMessages. //plays particle effect like spell casting or bleed etc.. public void PlayParticleEffect(uint effectid) { var effectevent = new GameMessageEffect(this.Guid, effectid); NetworkManager.SendWorldChannelMessages(Session, new GameMessageOnChannel[] { effectevent }); } ```","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/85/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 209859327,MDExOlB1bGxSZXF1ZXN0MTA3Njk0Nzcy,87,DO NOT MERGE - for reviewing work in progress only,25351661,closed,0,,,0,2017-02-23T19:27:26Z,2017-02-24T02:57:35Z,2017-02-24T02:57:35Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/87,"work in progress, committing for others to review","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/87/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 210217148,MDExOlB1bGxSZXF1ZXN0MTA3OTUwNDg4,90,Rewrote network stack,12808515,closed,0,,,3,2017-02-25T07:06:09Z,2017-02-27T11:28:37Z,2017-02-27T11:28:37Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/90,"Rewrote network stack to support buffering messages and then dispatching as 1 or more combined or split packets. EncryptedChecksum seems to work across the board. Sending Packets with fragments from different groups does not seem to cause an issue. Packets are queued and sent based on calls from the Engine. Configurable delay (5ms currently) Reworked CachedPackets some, and now clear the list based on AckSeq packets from client. Sending AckSeq packets to the client seems to cause issues currently, need more testing. Moved some things around to fit this new model. Put message Group as a property on each message. And send this in fragment. Sounds now work again. Created new packet classes to encapsulate data in AuthenticationManager and CharacterManager and allow them to be send through the same model (though packets will never be manipulated). ","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/90/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 210534535,MDU6SXNzdWUyMTA1MzQ1MzU=,96,Broadcasting chat to appropriate scope and loading landblocks,25351661,closed,0,25351661,,0,2017-02-27T16:27:03Z,2017-03-20T14:31:11Z,2017-03-20T14:31:11Z,CONTRIBUTOR,,,,"placeholder issue for what i'm working on, really","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/96/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 210974260,MDExOlB1bGxSZXF1ZXN0MTA4NDYzODEw,99,Character options are saving/loading from database.,22650655,closed,0,,,0,2017-03-01T04:04:17Z,2017-03-02T12:51:03Z,2017-03-02T12:51:03Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/99,Resolves issue #80 ,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/99/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 211191210,MDExOlB1bGxSZXF1ZXN0MTA4NjE2NDIz,101,World object - Seralization with Example,25387933,closed,0,,,0,2017-03-01T19:59:23Z,2017-03-01T21:05:52Z,2017-03-01T21:05:52Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/101,"World Object with Example @spawntest. This will only work one time because ACE dont have any real way to increment guids properly. Still could use some cleanup, but this is a great start and very useful so I am PRing it now.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/101/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 211242008,MDExOlB1bGxSZXF1ZXN0MTA4NjUzMzcy,102,World object - Improvement + Lifestone Test Object,25387933,closed,0,,,0,2017-03-01T23:28:15Z,2017-03-02T22:47:00Z,2017-03-02T12:55:01Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/102,"Use @spawntest to spawn a life stone. ","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/102/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 211502816,MDExOlB1bGxSZXF1ZXN0MTA4ODQwNDU4,104,portal.dat and cell.dat loading (issue #3),25351661,closed,0,,,0,2017-03-02T20:09:02Z,2017-05-30T15:34:36Z,2017-03-04T12:59:37Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/104,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/104/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 211886644,MDExOlB1bGxSZXF1ZXN0MTA5MTExNTA5,106,Continuing SO's WorldObject rework,25351661,closed,0,,,0,2017-03-04T15:39:17Z,2017-05-30T15:34:35Z,2017-03-06T12:33:26Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/106,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/106/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 212215798,MDExOlB1bGxSZXF1ZXN0MTA5MzI0Mjc1,109,World Object Fix,25387933,closed,0,,,1,2017-03-06T18:55:41Z,2017-03-06T22:38:36Z,2017-03-06T22:38:36Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/109,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/109/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 212240568,MDExOlB1bGxSZXF1ZXN0MTA5MzQyMDY2,110,A fix to Prevent Skill Spend server crash and allow for max Ranked Skills (Infinity!),37453,closed,0,,,0,2017-03-06T20:30:18Z,2017-03-07T01:29:18Z,2017-03-07T01:29:18Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/110,"- Renamed abilityUpdate to skillUpdate, to reflect the correct function/variables. - Refactored the SpendXp skills function to send a gamemessage on failed skill updates that prevents client from locking up the Rank Up interface buttons. - Added an upper-bounds check to prevent skills from going out of bounds. - Created an offset variable to prevent +10 from going out of bounds when the rank is to high. - Changed the comment describing known issues on skillSpend","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/110/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 212274507,MDExOlB1bGxSZXF1ZXN0MTA5MzY3MDc2,111,Life stone Fix = World Object Fix Usable,25387933,closed,0,,,0,2017-03-06T22:47:12Z,2017-03-07T09:40:25Z,2017-03-07T01:31:04Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/111,Adding proper flags to World Object Usable.,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/111/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 212324458,MDExOlB1bGxSZXF1ZXN0MTA5NDAyNDkw,112,Save default character options when creating a character.,22650655,closed,0,,,0,2017-03-07T04:00:31Z,2017-03-07T13:14:03Z,2017-03-07T13:14:03Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/112,"When creating a character this will set several character options to true and save to the database. The options set to true are the same ones when you click the ""Default"" button in the options tab.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/112/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 212333121,MDExOlB1bGxSZXF1ZXN0MTA5NDA4MzQz,113,Max Rank Fireworks and Correct Skill Rank Up text Color,37453,closed,0,,,0,2017-03-07T05:17:04Z,2017-05-23T15:53:42Z,2017-03-07T13:45:27Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/113,"- I could not find a way to check the skill rank after it was set, so I added a function to check max rank. If the function returns a Boolean true, then the server will play fireworks when reached max rank - Changed the message type to Advancement when increasing skills too reflect the correct skill advancement chat color. - Added a few summary comments and fixed remarks/known issues.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/113/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 212905393,MDExOlB1bGxSZXF1ZXN0MTA5ODE5NTcw,115,Add host & port to connect messages,26289176,closed,0,,,0,2017-03-09T01:04:31Z,2017-03-09T01:26:45Z,2017-03-09T01:26:45Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/115,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/115/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 213533094,MDExOlB1bGxSZXF1ZXN0MTEwMjYxODY3,118,Landblocks,26334665,closed,0,,,9,2017-03-11T14:52:38Z,2017-03-13T01:57:25Z,2017-03-13T01:57:25Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/118,"there are a lot of // TODO comments all over this thing. here's what I know works: /telepoi town1 /createlifestone /telepoi town2 /telepoi town1 ... and the lifestone is still there. Looked like Mogwai bailed yesterday so I figured I'd upload this stuff just in case you wanted it. Local chat was started, but not done. I may or may not have broken it - I didn't test.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/118/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 213538178,MDExOlB1bGxSZXF1ZXN0MTEwMjY0MDY3,119,"Level up on xp change, PropertyInt Message Types and skill credits",37453,closed,0,11369233,,3,2017-03-11T16:08:42Z,2017-05-23T15:53:44Z,2017-03-18T13:59:42Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/119,"- Changed the Character.Level variable from an int to a uint. - Added leveling up on grantxp. Since we don't get XP anywhere else, this is the only way so far. - Added skill credits. You cannot spend them to add skills yet. AvailableSkillCredits. - Changed the /grantxp command to allow up too 999,999,999,999 xp. - Followed @Zegeger and created a Network Message Type for PropertyInt - Allow for Max Level locking, set from the XP chart. - Added effects on leveling up.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/119/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 213657914,MDExOlB1bGxSZXF1ZXN0MTEwMzI5MTQw,121,"Landblocks, logging, object factory prep work",26334665,closed,0,25351661,,3,2017-03-13T02:23:28Z,2017-03-18T18:42:28Z,2017-03-18T18:42:28Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/121,"there are a lot of // TODO comments all over this thing. here's what I know works: /telepoi town1 /createlifestone /telepoi town2 /telepoi town1 ... and the lifestone is still there. Features: * Landblock Management * Landblock Handoff of teleporting objects * Broadcasting of objects on a landblock based on existence * Update of objects in a landblock based on Movement * Landblock adjacency broadcasting * basic object factories * log4net - not having console output was killing me and we needed a logging framework anyway. nuget to the rescue. * moved ""in front of"" calculations to hang off the Position object for better reuse * PackedDWORD object * Delayed update of position after entering portal space seems to have helped porting stability. Known Issues * Adjacency matrix has issues broadcasting to the correct adjacencies. Shouldn't be a big deal - I'll fix it later. * local chat is untested and possibly/likely broken. Mag is showing up in the commit log because I squashed a commit with his name on it when attempting a rebase. Ended up just cherrypicking into a new branch.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/121/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 213680800,MDExOlB1bGxSZXF1ZXN0MTEwMzQ0MjIx,125,Save Player Properties to db,37453,closed,0,11369233,,2,2017-03-13T06:02:12Z,2017-05-23T15:53:47Z,2017-03-18T14:00:13Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/125,"-Saves every 60 ""ticks"". Please advise on the best stats saving interval. -Implemented database update functions for character properties. -Added a character save ticker. Please advise on the proper location for this, I did this quickly. ","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/125/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 213875928,MDExOlB1bGxSZXF1ZXN0MTEwNDgyMzkx,126,improved dat file content exporting,26334665,closed,0,,,1,2017-03-13T19:42:02Z,2017-03-14T18:32:43Z,2017-03-14T18:32:43Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/126,"* improved cell.dat and portal.dat exporting * created admin server commands for exporting * unit tests that can be uncommented and run for exporting","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/126/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 214166899,MDExOlB1bGxSZXF1ZXN0MTEwNjg5MzEy,127,Dat File parsing,26334665,closed,0,,,0,2017-03-14T18:33:48Z,2017-03-15T12:12:22Z,2017-03-15T12:12:22Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/127,"* improved cell.dat and portal.dat exporting, created admin server commands for them as well as unit tests that can be uncommented. * bug fix in DatFile with the FileOffset being wrong. started detailed documentation on dat file contents. * worked on some object parsing. found a bunch more object types in the client - now categorizes ALL portal files.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/127/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 214596925,MDExOlB1bGxSZXF1ZXN0MTEwOTkyMzE2,131,Create Training Wand,25460553,closed,0,,,1,2017-03-16T04:37:15Z,2017-03-16T05:13:40Z,2017-03-16T05:13:40Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/131,"Added some test code to create a training wand. As part of this work, I put in some fixes in sizes, added AnimationFrame. While this is not all that spectacular - it perfectly matches live server pcaps in every field. I would like to work on persisting this out to the database. I assume we will need to implement a next object_id sequence as part of this. In the test code it just sets an arbitrary object_id for the wand since it is not yet persisted. Any feedback on the code would be appreciated - I am way out of date, but studying hard to get caught up so I can help. Pea gave me the final piece of the puzzle - without being able to set animation frame, setting the flag caused an alignment mismatch. God this was fun. I forgot how much I used to love coding. ","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/131/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 214601610,MDExOlB1bGxSZXF1ZXN0MTEwOTk1NTMx,132,Fixed message fragmentation,12808515,closed,0,,,0,2017-03-16T05:19:55Z,2017-03-16T12:15:40Z,2017-03-16T12:15:40Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/132,Fixed fragmentation logic; we should not fragment messages that do not fill a full packet. Removed NetworkSession.Flush as this change fixed all cases where that seemed needed. Fixed NETWORKDEBUG section which was missed by network refactor,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/132/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 214728678,MDExOlB1bGxSZXF1ZXN0MTExMDg0NjA1,134,Added attribute upper bounds check and max attribute fireworks and special text,37453,closed,0,11369233,,1,2017-03-16T14:46:16Z,2017-05-23T15:53:45Z,2017-03-18T14:00:37Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/134,"-Added upper bounds checks for the Ranks so that Attributes will not crash the server. -Added fireworks and special text on max rank, too match skills.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/134/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 214781043,MDExOlB1bGxSZXF1ZXN0MTExMTIzMjg3,136,Create Training Wand - Demo work for item creation.,25460553,closed,0,,,3,2017-03-16T17:28:59Z,2017-03-16T23:29:47Z,2017-03-16T23:29:38Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/136,"Added some test code to create a training wand. As part of this work, I put in some fixes in sizes, added AnimationFrame. While this is not all that spectacular - it perfectly matches live server pcaps in every field. I would like to work on persisting this out to the database. I assume we will need to implement a next object_id sequence as part of this. In the test code it just sets an arbitrary object_id for the wand since it is not yet persisted. Any feedback on the code would be appreciated - I am way out of date, but studying hard to get caught up so I can help. Pea gave me the final piece of the puzzle - without being able to set animation frame, setting the flag caused an alignment mismatch. God this was fun. I forgot how much I used to love coding.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/136/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 214784803,MDExOlB1bGxSZXF1ZXN0MTExMTI2MDMz,137,World object fixes,25387933,closed,0,,,2,2017-03-16T17:41:46Z,2017-04-06T11:18:30Z,2017-03-16T18:50:26Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/137,World Object Fixes + Start of Global Guid Manager,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/137/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 214820003,MDExOlB1bGxSZXF1ZXN0MTExMTUxODk2,138,police-mode /on,25351661,closed,0,,,0,2017-03-16T19:53:59Z,2017-05-30T15:34:35Z,2017-03-20T02:14:56Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/138,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/138/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 214868377,MDExOlB1bGxSZXF1ZXN0MTExMTg2ODI0,139,Updated for new wo changes - Create Training wand test implementation,25460553,closed,0,,,0,2017-03-16T23:31:14Z,2017-03-19T03:28:36Z,2017-03-19T03:28:36Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/139,"Added some test code to create a training wand. As part of this work, I put in some fixes in sizes, added AnimationFrame. While this is not all that spectacular - it perfectly matches live server pcaps in every field. I would like to work on persisting this out to the database. I assume we will need to implement a next object_id sequence as part of this. In the test code it just sets an arbitrary object_id for the wand since it is not yet persisted. Any feedback on the code would be appreciated - I am way out of date, but studying hard to get caught up so I can help. Pea gave me the final piece of the puzzle - without being able to set animation frame, setting the flag caused an alignment mismatch.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/139/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 214892739,MDExOlB1bGxSZXF1ZXN0MTExMjAzNjcy,140,"Fixed Hash32, which corrects Attribute raise issue",12808515,closed,0,,,0,2017-03-17T02:42:09Z,2017-03-17T12:10:41Z,2017-03-17T12:10:41Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/140,"Fixed error in shift logic of Hash32, preventing certain packets from calculating correct checksum","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/140/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 215224510,MDU6SXNzdWUyMTUyMjQ1MTA=,144,Add the Ability to drop an item from your backpack.,25460553,closed,0,25460553,,1,2017-03-18T21:55:25Z,2017-04-03T12:05:30Z,2017-04-03T12:05:30Z,CONTRIBUTOR,,,,I am working on this at the moment. Can it be assigned to me?,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/144/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 215238775,MDExOlB1bGxSZXF1ZXN0MTExNDM1NjA5,146,Create Training Wand Demo code and start inventory management Drop/Equip/pickup,25460553,closed,0,,,1,2017-03-19T03:36:14Z,2017-03-19T13:24:51Z,2017-03-19T13:24:51Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/146,"Added Test Code to create Training Wand Updated for new wo and landblock changes Started work to drop item. I want to add this interum work which compiles and works so that I might could get some assistance with the correct way to implement the event animation. Thanks Charles / Og II","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/146/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 215315873,MDExOlB1bGxSZXF1ZXN0MTExNDgwMjQ5,149,added code for palettes to work correctly. PaletteGuid - corrected …,25460553,closed,0,,,0,2017-03-20T02:02:48Z,2017-04-14T19:37:38Z,2017-03-20T02:39:10Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/149,Small PR to fix bug with Palette method. Added PaletteGuid and write it out as required. Fixed Spelling. The fix for this was originally implemented by @LytelthorpeThistledown Getting this in sooner rather than later will help a lot of people as they are starting to work on this area of the code.,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/149/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 215328613,MDExOlB1bGxSZXF1ZXN0MTExNDg4Mzc1,152,Very basic animation,12808515,closed,0,,,0,2017-03-20T04:32:33Z,2017-03-21T02:55:11Z,2017-03-21T02:55:11Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/152,"Added basic animation message. Send logout animation when logging out. Created a sequence manager and related classes, trying to better structure the numerous sequences we must store/track. (Only started with animation sequences, but if we like this, can convert other sequences over) General cleanup","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/152/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 215337062,MDExOlB1bGxSZXF1ZXN0MTExNDkzODUz,153,Feature: Spend Skill Credits,37453,closed,0,,,0,2017-03-20T06:11:56Z,2017-05-23T15:53:56Z,2017-03-20T12:08:34Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/153,"Within this request I've sent code that will allow the client to attempt too spend skill credits. If enough skill credits are available, the server will grant the skill to the the character. If the skill credits are not available or the skill has already been trained, then the server makes sure to send the correct game messages with Skill.None, to keep the client from locking up. On the bottom of the Skill.cs, I've added an extension that allows for skills with proper names, example: `Sneak Attack` instead of `SneakAttack`.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/153/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 215393441,MDExOlB1bGxSZXF1ZXN0MTExNTMyOTE1,154,complete stylecop cleanup,26334665,closed,0,,,0,2017-03-20T11:32:10Z,2017-05-30T15:34:27Z,2017-03-20T12:05:51Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/154,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/154/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 215438276,MDU6SXNzdWUyMTU0MzgyNzY=,155,Implement lifestone usage,25351661,closed,0,,,0,2017-03-20T14:30:48Z,2017-04-10T11:35:50Z,2017-04-10T11:35:50Z,CONTRIBUTOR,,,,"* Using a Lifestone * Implement /die or whatever the command was * Portal back to your position of the lifestone usage on death * [Bonus points] Vitae","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/155/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 215715644,MDExOlB1bGxSZXF1ZXN0MTExNzYyODI1,158,updating with documentation and a // TODO,25351661,closed,0,,,0,2017-03-21T12:06:10Z,2017-05-30T15:34:34Z,2017-03-21T12:06:16Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/158,,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/158/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 215784686,MDExOlB1bGxSZXF1ZXN0MTExODEwNTI5,159,Added Path support for Mono applications (Linux),37453,closed,0,,,0,2017-03-21T15:44:06Z,2017-06-28T19:47:34Z,2017-03-22T04:49:19Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/159,"Added Mono Path compatibility (Linux support) to the following objects by removing the prefixed slashes in file paths: - ConfigManager - Charts - Dat Loading Note: This was tested and working correctly on `Ubuntu 16.04`. No bugs were observed when play testing. Installation Hint: The server currently requires _at least_ installing `mono-complete` with the `apt-get` package manager.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/159/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 215897071,MDExOlB1bGxSZXF1ZXN0MTExODkzNDI4,160,Monster factory,26508216,closed,0,25351661,,2,2017-03-21T22:24:40Z,2017-05-02T12:14:08Z,2017-03-27T19:06:37Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/160,This fleshes out MonsterFactory to read the object data for a Drudge Sneaker from the database and spawn it next to the player. Thanks a ton @LytelthorpeThistledown for his work which helped alot to get this done.,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/160/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 215950513,MDExOlB1bGxSZXF1ZXN0MTExOTMxMDAy,161,Animation fix,12808515,closed,0,,,0,2017-03-22T04:35:26Z,2017-03-22T04:53:02Z,2017-03-22T04:53:02Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/161,"Quick fix; had removed sequence initial value, but apparently it was needed. Testing fail. Also moved Logout Enqueue to correct place per comment.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/161/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 215950727,MDU6SXNzdWUyMTU5NTA3Mjc=,162,"Inbound fragment combining, sequence reordering, checksum validation",12808515,closed,0,,,0,2017-03-22T04:37:23Z,2017-04-03T12:05:20Z,2017-04-03T12:05:20Z,CONTRIBUTOR,,,,"Additional work needed in Network code. Please assign to me.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/162/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 216098076,MDExOlB1bGxSZXF1ZXN0MTEyMDMzMTIy,164,Dat Path Updates,37453,closed,0,,,0,2017-03-22T15:09:55Z,2017-05-23T15:50:58Z,2017-03-22T15:15:35Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/164,"Update to Yesterday's Path support PR. The path support push broke the loading of dats without trailing slashes in the config. Here are the changes in this PR that address this issue: - Updated example DatFileDirectory with a trailing slash at the end of the value - Changed DatLoader to use Path.Combine, trailing slash is no longer needed. `ServerTime initialized to Date: Wintersebb 22, 28 P.Y. Time: Warmtide 2017-03-22 10:04:22,672 INFO : Successfully opened C:\ACE\client_cell_1.dat file, containing 1 records 2017-03-22 10:04:22,781 INFO : Successfully opened C:\ACE\client_portal.dat file, containing 1 records`","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/164/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 216250810,MDU6SXNzdWUyMTYyNTA4MTA=,166,Give Characters a set of positions,25351661,closed,0,,,1,2017-03-23T00:40:45Z,2017-04-03T12:05:11Z,2017-04-03T12:05:11Z,CONTRIBUTOR,,,,"Make an enum for the following positions types: * Physical Location * Lifestone Used * Lifestone Tied * Portal Recall * Primary Portal Recall * Secondary Portal Recall * Allegiance Hometown (This should only apply to monarchs) * Mansion Recall Notes / Requirements * The character database model will need to change so that players have a set of positions rather than a single position * The character object will have 1 new property for each of the recall locations in the enumeration, where Allegiance Hometown will attempt to find the monarch's Allegiance Hometown. If you can't do this yet, just slap a // TODO and return null. * Each of these positions should save to the database whenever changed. * Hook up the /lifestone and /ls commands to go to the Lifestone position. ","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/166/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue 216282064,MDExOlB1bGxSZXF1ZXN0MTEyMTU2MTQ2,167,weenies weenies everywhere. object structure pass for review.,25351661,closed,0,,,3,2017-03-23T03:34:09Z,2017-05-30T15:34:34Z,2017-03-25T05:22:52Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/167,"yeah, so this works....","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/167/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 216649386,MDExOlB1bGxSZXF1ZXN0MTEyMzg3ODA2,168,Item Management,25460553,closed,0,,,0,2017-03-24T04:52:10Z,2017-03-24T14:11:48Z,2017-03-24T14:11:48Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/168,"Not ready to be pulled. @ctw me - creates a training wand in your backpack @ctw ground spawns a training wand on the ground Drag wand to the ground. It does drop the item and takes it out of the backpack. It does register with the landblock. I had the motion working (bending down to drop the wand and standing back up) but something I changed has got that not working. The wand does not appear in the visible field. - not sure why. I am way out of date on coding - and I am sure I have done stuff incorrectly. Any feedback on how to code this better or topics I should read up on will be greatly appreciated. I feel like this is really really close to working. Also, I know the hard coding of data will go away once we have the Weenie data in the database. I put in a number of comments and TODO's to follow up on. The PCAP is unless I am just blind - almost identical to this one I used as a template. Any help will be appreciated. Here is a link to the live server PCAP https://www.dropbox.com/s/q0l3wi4mhx0n7ce/drop_item.pcap?dl=0 ","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/168/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 217025656,MDExOlB1bGxSZXF1ZXN0MTEyNjEzNTg0,170,Fixed bug in F748: Set Position and Motion,25460553,closed,0,,,0,2017-03-26T04:07:03Z,2017-04-14T19:37:35Z,2017-03-27T12:29:07Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/170,"There has been a bug in this code that was keeping me from being able to drop an item. - Fixed alignment problem and cleaned up the ability to report position with the correct flags - I moved and expanded an enum flag list for correct scoping - I put the position flag in the position object and initialized the flags correctly on player create. - Added another signature to Serialize - left the old one for backward compatibility - we may want to look at refactoring this. Please let me know if you anything that looks wrong. I am still learning. This is more of a plumbing fix. You should not notice anything new or anything new broken :) If this get's merged - I want to start looking at creating mutable objects next.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/170/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 217028943,MDExOlB1bGxSZXF1ZXN0MTEyNjE1MjI4,171,Renamed the new db statement constructor label,37453,closed,0,,,0,2017-03-26T05:29:12Z,2017-05-23T15:54:40Z,2017-03-26T12:16:24Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/171,- Renamed a function to cut down on confusion. Fixes an assumed typo in name for new function `ConstructStatement`.,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/171/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 217055250,MDExOlB1bGxSZXF1ZXN0MTEyNjI5MTAx,172,Implements GameAction/Event for Update Health,26508216,closed,0,,,1,2017-03-26T14:21:05Z,2017-04-20T20:03:58Z,2017-03-28T20:45:21Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/172,This is limited for Players currently but should be adjustable once creatures are in.,"{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/172/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 217107233,MDExOlB1bGxSZXF1ZXN0MTEyNjUyOTM2,174,Update: Prevent Welcome Message/Motd when string is empty,37453,closed,0,,,0,2017-03-27T00:37:32Z,2017-03-27T02:36:34Z,2017-03-27T01:06:25Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/174,"- Thanks to Miach for coding and testing this PR. - If the `Config.json` file includes an EMPTY `Welcome` config variable, then the server will not send the Popup dialog box, upon logging into a server. Example: ``` { ""Server"": { ""WorldName"": ""Darktiphoid"", ""Welcome"": """", ""Network"": { ""Host"": ""0.0.0.0"" }, }, } ```","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/174/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 217109932,MDExOlB1bGxSZXF1ZXN0MTEyNjUzNjY1,175,Created IF statement to remove Welcome popup box,24981658,closed,0,,,0,2017-03-27T00:53:42Z,2017-04-28T03:29:56Z,2017-03-27T01:09:44Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/175,"When using this IF statement you can remove the Welcome to this ACE server!\nFor more information visit http://www.acemulator.org. from inside the quotes in the config.json file and the popup box does not appear.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/175/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 217123739,MDExOlB1bGxSZXF1ZXN0MTEyNjYwOTMy,176,Save Character Position to Database,37453,closed,0,,,0,2017-03-27T02:56:31Z,2017-05-23T15:54:38Z,2017-03-27T12:34:05Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/176,"- Update Player.cs `SaveCharacter()` function to store the `Player.Position` in the Character data object, right before the object is is stored in the database. This allows the server to save the character's position on logout or after the player save interval has ended. - Added a summary comment for `SaveCharacter`. - Updated Code Style per StyleCop.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/176/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 217338363,MDExOlB1bGxSZXF1ZXN0MTEyODExNzU2,177,Update: SQL Where Syntax for ConstructStatement,37453,closed,0,,,0,2017-03-27T18:44:52Z,2017-05-23T15:54:36Z,2017-03-27T18:49:55Z,CONTRIBUTOR,,0,ACEmulator/ACE/pulls/177,"- Updated the `wherelist` text to include the proper SQL syntax, for a WHERE clause.","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/177/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,79078680,pull 217425388,MDU6SXNzdWUyMTc0MjUzODg=,178,Primary keys too restrictive on some weenie tables,25618389,closed,0,,,0,2017-03-28T01:56:16Z,2017-04-10T11:35:43Z,2017-04-10T11:35:43Z,CONTRIBUTOR,,,,"Proposed fix: ALTER TABLE weenie_palette_changes DROP PRIMARY KEY, ADD PRIMARY KEY(weenieClassId, subPaletteId, offset, length); ALTER TABLE weenie_texture_map_changes DROP PRIMARY KEY, ADD PRIMARY KEY(weenieClassId, index, oldId); I think the weenie_palette_changes table needs a different primary index. Currently it is weenieClassId + subPaletteId. Here is the palette data for Narg. subPaletteId,offset,length 67116992,192,64 67109565,256,64 67114248,576,160 67114248,1088,192 67114248,320,192 67114248,928,160 67114248,0,192 67114248,768,96 67114248,928,96 67110336,2000,48 subPaletteId 67114248 appears 7 times, twice it has the same offset of 928 The same problem exists for weenie_texture_map_changes. Currently it is weenieClassId + index. Here is the texture data for the Aluvian Mid-Stakes Gamesmaster index,oldId,newId 16,83886232,83890685 16,83886668,83890262 16,83886837,83890287 16,83886684,83890353 9,83887070,83886781 9,83887062,83886686 0,83889072,83889072 0,83889342,83889342 5,83887064,83886241 1,83887064,83886241 3,83889344,83887054 7,83889344,83887054 4,83887068,83887054 8,83887068,83887054 index 16 apears 4 times","{""url"": ""https://api.github.com/repos/ACEmulator/ACE/issues/178/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,79078680,issue