Commit Graph

124 Commits

Author SHA1 Message Date
Tahir Akhlaq
3bcaa4cc3e added some more ai stubs
- created mob class
- added pathfind and targetfind helper classes (todo: actually add stuff to them)
- added action queue helper class (todo: add shit to it)
2017-06-29 19:14:05 +01:00
Tahir Akhlaq
872e56f8f9 navmeshes now super lightweight (<3 u devi)
- refactored some stuff
- unhardcoded navmesh loading
- included sharpnav license
2017-06-29 19:14:03 +01:00
Filip Maj
3370309dd0 Cleaned up the code and fixed a bunch of bugs. Map server will no longer worry about base packets. 2017-06-27 21:08:30 -04:00
Filip Maj
7c4091a196 Finished refactoring Map Server. Clear of syntax errors. 2017-06-27 16:55:14 -04:00
Filip Maj
019e305525 Fixed redundant looping when removing/finishing a director. Fixed issue where packets to delete content group wouldn't send. Fixed issue where ContentGroups/Directors weren't clearing after deletion causing a growing amount of zombie groups/directors. 2017-06-25 14:52:32 -04:00
Filip Maj
875b76634a Implemented more of the Guildleve Director. Correct script is now autoloaded based on leveplate. Players are now added to the contentgroup on leve start. Moved animation and stuff to C# side of things. Cleaned up code. 2017-06-25 14:25:54 -04:00
Filip Maj
f00e878dd0 Fixed session issue. Still a stopgap until d/cing is implemented. 2017-06-19 23:11:24 -04:00
Filip Maj
d96d5b29a5 Fixed issue where spawn packets were sent on zone out. Added all npcs to Camp Bearded Rock. Rewrote how mapobjs get loaded in, no more hardcodes. Added tons mapobjs to the DB. Added ferry npcs. 2017-06-14 22:24:09 -04:00
Filip Maj
8c9ecebae6 Added a "silent" option for LuaEngine calls. More content instance work. Full classpath now used for zones. 2017-04-29 20:30:54 -04:00
Filip Maj
2de4934c41 Fixed battle npcs appearing strangely (no nameplate, wrong colour, etc), and implemented content groups! 2017-04-15 16:33:56 -04:00
Filip Maj
248ea0cce1 Merge branch 'develop' into lua_waiters 2017-04-02 14:29:37 -04:00
Tahir Akhlaq
6dd8bdda0c Merged in takhlaq/ffxiv-classic-server/null (pull request #38)
added db launch args and improved import time on gamedata_actor_class.sql
2017-03-27 16:57:02 +00:00
Tahir Akhlaq
a2a30003e0 added db launch args and improved import time on gamedata_actor_class.sql 2017-03-25 04:36:19 +00:00
Filip Maj
718bc28c57 Implemented "wait" functionality to the lua engine. Lost commits due to screw up. 2017-03-13 14:06:57 -04:00
Filip Maj
0c3f6cc9c4 Fixed bug with old "findActor" code since private areas were added. Add scripts for npcs in echo during limsa opening. 2017-03-08 09:12:14 -05:00
Filip Maj
e898c045f7 Overhaul of the director system and opening quests. Private Areas further implemented as well. 2017-03-07 00:09:37 -05:00
Filip Maj
f7482781e5 Rewrote directors so that they can work in the new system. Began adding content groups to the map server. 2017-01-29 11:07:28 -05:00
Filip Maj
9372b4bc32 Added a thread and update() calls for gamestate changing. 2017-01-16 19:14:13 -05:00
Filip Maj
b9c0084080 Fixed pushCommand load bug. Set all Aetherytes to wrong command id; fixed. 2017-01-10 23:47:37 -05:00
Filip Maj
fb1d22d731 Push command loading implemented. 2017-01-10 16:43:03 -05:00
Filip Maj
9bc3fc8dd7 Setting the active linkshell now works. 2017-01-09 23:12:56 -05:00
Filip Maj
771b5b6d81 LS kicking and leaving work. 2017-01-09 00:12:11 -05:00
Filip Maj
61e4effd74 Started implementing LS management. Rank change works. 2017-01-08 23:13:15 -05:00
Filip Maj
108d8be013 Linkshell inviting completed. 2017-01-08 21:42:43 -05:00
Filip Maj
5d494255ad Party invite done, as well as chat. Fixed double output of say packets. Note: Still need to implement name version of invite!!! 2017-01-02 14:35:11 -05:00
Filip Maj
2b10221a75 Party sync is done. Finished kick/promote code. Client is now always at the top of pt list. 2016-12-21 21:49:50 -05:00
Filip Maj
16c9b741bf Kicked/Promote leader added but broke login. D/Cing now. 2016-12-21 18:02:50 -05:00
Filip Maj
e89b7557b3 Zone server now uses the World server's group classes. MotD now shows proper world name. Added party functions to zone server. 2016-12-21 09:27:51 -05:00
Filip Maj
ae38ee1bc1 Merge branch 'group_work' of https://bitbucket.org/Ioncannon/ffxiv-classic-server into group_work
# Conflicts:
#	FFXIVClassic Map Server/WorldManager.cs
2016-12-21 08:28:24 -05:00
Filip Maj
bf9095822e Got party leader working. Added linkshell world/zone requests. 2016-12-21 08:27:23 -05:00
Filip Maj
2bdc238bc2 Added party sync packet which will sync member info between world/zone servers. 2016-12-20 19:17:50 -05:00
Filip Maj
3864bf6d85 Merge branch 'proxy_server' into develop
# Conflicts:
#	FFXIVClassic Common Class Lib/packages.config
2016-12-03 14:03:13 -05:00
Filip Maj
4ce4647a75 If a player tries to zone to a offline server they will see a standard error message. Also a reconnection attempt will be made on a disconnected server. 2016-12-03 14:00:24 -05:00
Filip Maj
260878df38 Fixed login breaking due to destinationZone not going to 0 after switch or crash. 2016-12-03 13:33:39 -05:00
Filip Maj
ebd8ab0580 Fixed random crashes when zoning. Was due to improper write of the SessionEndPacket. For extra safety db is locked until zone in happens. Added some logs. Seems to be all working! 2016-12-03 13:23:32 -05:00
Filip Maj
e30831fdc5 Built subpackets to let the zone servers talk to the world server. Implemented cross-server zoning but the E2 packet or something isn't being sent. 2016-12-03 12:19:59 -05:00
Filip Maj
d931f71b06 Map server will only load maps it's set to load. 2016-08-29 13:39:50 -04:00
Jordan Maxwell
00e5e4f642 Updated Chocobo Lender script 2016-08-19 17:43:04 -05:00
Filip Maj
63ac56224e Merge branch 'develop' of https://bitbucket.org/Ioncannon/ffxiv-classic-server into develop 2016-08-14 08:52:27 -04:00
Filip Maj
595a53ed9e Forgot to push file for seamless zone change. 2016-08-05 18:25:24 -04:00
Filip Maj
67928ee875 Seamless zoning implemented WOOOO! 2016-07-31 23:00:38 -04:00
Filip Maj
8eb257aba4 Seamless boundries added to DB and loaded by WorldManger. 2016-07-31 22:30:54 -04:00
Filip Maj
b43a6885c5 Added functions to allow for an improved seamless zone change. Player can now pull actors from two zones when performing a seamless zone change to give a improved feel. 2016-07-31 21:48:17 -04:00
Tahir Akhlaq
065fe05795 fixed import script, improved db import times, fixed logging and warp command (should be 5000% legit now)
- improved import times for gamedata tables (there's prolly other innodb tables too, i didnt check though)
- fixed issue where player wouldnt be readded to zone on warping if destination wasnt valid
- corrected typo in warp command lua description
- added logger for lua cause i forgot to last time
2016-07-27 17:23:52 +01:00
Filip Maj
2939683183 Added property flags for actors. Cleaned up NPC constructor. 2016-07-24 10:21:45 -04:00
Tahir Akhlaq
ac01224769 fixed derps causing client/server crashes 2016-06-16 03:49:58 +01:00
Tahir Akhlaq
335a59204c Merge branch 'master' of https://bitbucket.org/Ioncannon/ffxiv-classic-server into method_casing
# Conflicts:
#	FFXIVClassic Map Server/CommandProcessor.cs
#	FFXIVClassic Map Server/WorldManager.cs
#	FFXIVClassic Map Server/actors/area/Area.cs
#	FFXIVClassic Map Server/actors/area/PrivateArea.cs
#	FFXIVClassic Map Server/actors/area/Zone.cs
#	FFXIVClassic Map Server/actors/chara/npc/Npc.cs
#	FFXIVClassic Map Server/common/Utils.cs
#	FFXIVClassic Map Server/dataobjects/ConnectedPlayer.cs
2016-06-14 22:54:02 +01:00
Tahir Akhlaq
24f55139dd mass replaced all methods to pascal case 2016-06-14 21:29:10 +01:00
Tahir Akhlaq
ed0a0a58f7 added nlog logging (todo: custom logger for packets) 2016-06-14 19:06:55 +01:00
Filip Maj
957a8d89bb Null event conditions get defaulted to empty conditions to allow anything to spawn. More work on the scripts. Committing the new sql schema + imports of all 3 town zones. 2016-06-12 18:43:41 -04:00
Tahir Akhlaq
c23f9c7ca9 PROJECT: added common library to make common files actually common
- renamed sln to FFXIVClassic.sln
- threaded logging
- todo: print packets using Log.Packet
2016-06-12 20:12:59 +01:00
deviltti
1c712c7533 Cleaned up LogFile and ByteArrayToHex utils. 2016-06-10 19:58:01 -04:00
Filip Maj
f0d4429f65 Child scripts now loaded by a uniqueId in the spawn table. 2016-06-09 22:58:03 -04:00
Tahir Akhlaq
8b93abe86e servers now log (almost) everything to file
- regex'd in mysqlexception logging
- servers can now specify server_port, log_path, log_file
- added scripts to import/export all tables (exporting will export a handful of garbage table names, open and check for structure before deleting)
- fixed packet logging (thanks deviltti)
2016-06-09 19:48:06 +01:00
Filip Maj
62ed9b22f1 Implemented actor instancing, as well as automatic name generation for NPCs. 2016-05-29 15:14:09 -04:00
Filip Maj
3d5fa45730 Merge branch 'develop'
# Conflicts:
#	FFXIVClassic Map Server/FFXIVClassic Map Server.csproj
#	FFXIVClassic Map Server/Server.cs
#	data/scripts/player.lua
#	scripts/zones/193/npcs/pplStd_11@0C100.lua
2016-04-18 13:31:55 -04:00
Filip Maj
d989ec2a58 Added two callbacks to the Director; onTalked and onCommand. Split the command and event starts and keep track of them separately. 2016-04-14 08:30:21 -04:00
TheManii
06606c5f01 *Revert changes to worldmanager.cs, not needed anymore
*Made !warp silently catch all exceptions so they dont crash server/don't change player state if invalid
*Moved rest of !warp parsing logic into parseWarp(), doWarp() now purely handles actual act of warping
2016-04-09 12:27:04 -07:00
Filip Maj
1f5788def8 Redundent zoneid was redundent. 2016-04-07 22:32:04 -04:00
TheManii
ecc61ea5f9 Surrounded command chain with region boxes
Changed doWarp() to handle in implicit, in-zone only warps

Might have issues with instanced zones, untested
2016-04-07 12:25:28 -07:00
Filip Maj
a615f29e63 Added path companion data to the cutscene book packet. Now that packet will fire if zoning into the inn. Removed some debug logs. Removed a duplicate zone packet send call. 2016-03-28 21:00:33 -04:00
Filip Maj
4d57aa72a6 Cleaned up the 0x02 packet. It fires in response to the 0x2 packet sent by the client it seems. 2016-03-28 12:14:10 -04:00
Filip Maj
2048d8d188 Implemented a intra-zone teleport. Trigger Name is now sent to to the "eventStart" lua callback. Lua scripts can now access world manager. 2016-03-20 21:18:46 -04:00
Filip Maj
0876b293e8 Started to implement private areas. Works mostly, but only one instance is created. All the push triggers work more or less except bounding box. 2016-03-20 19:29:38 -04:00
Filip Maj
44e5430fdc Implemented equipment and equip graphics. Add some zone callbacks and "first start" functionality. Added playtime. 2016-03-06 17:55:42 -05:00
Filip Maj
42ba95b69d Reworked zones to allow for isolated zones (IE Opening Zone) and private area instances. 2016-02-07 13:05:54 -05:00
Filip Maj
5c8277fbb9 Redid the database, actor_class and npclist was combined. Added commands to the lua engine. Script will default to a PopulaceStandard if no script detected to avoid crashing. Static Actors now loaded from the static actors file. 2016-01-28 23:24:20 -05:00
Filip Maj
300748668f Removed NLua and replaced it with MoonSharp. Scripting for NPCs has been implemented, but still have to test a lot. 2016-01-24 17:11:35 -05:00
Filip Maj
e043be5ca4 Added a way to reset a zone and reload the NPC list. 2016-01-24 03:10:17 -05:00
Filip Maj
7bc3c8c2dd Added event conditions to the database. This is a JSON object that stores all types of conditions. The server also sends the correct packets to enable these conditions (minus the push packets... those aren't implemented). 2016-01-23 22:11:45 -05:00
Filip Maj
ea6b1e33c7 NPCs now spawn and load template from the db. 2016-01-20 23:18:10 -05:00
Filip Maj
02b90edd3f Added two new commands; warp by zone entrance and a getpos command. Fixed character actor not appearing on zone... 0x2 packet only sent on login. Added spawnType to getSpawnPackets. 2016-01-20 00:02:57 -05:00
Filip Maj
0462b790b7 Built a WorldManager to handle zones. 2016-01-19 21:06:41 -05:00
Filip Maj
887da7b503 Moving zone/login stuff away from packetprocessor into a "WorldManager" class. 2016-01-17 23:36:34 -05:00