e97b58ccaf
Fixed private instance memory leaks.
2020-10-19 04:30:12 +02:00
4a5857a126
QoL improvements.
...
* Use macros for extracting map numbers and player IDs from instance IDs
* Add docstrings to all commands
* Remove /test command
* Sync with tdata
2020-10-18 22:43:22 +02:00
Gent
ab5857e7e2
Fix re-crocpotting ( #134 )
2020-10-16 19:54:05 -04:00
Gent
da725d21e6
Delete instances with no players
2020-10-16 11:50:03 -04:00
Gent
efd729710f
Kick players out of instances when they leave
2020-10-15 17:07:58 -04:00
Gent
85530ef57f
Implement instance copying
...
and make respawn points match the player instance
2020-10-15 17:07:58 -04:00
Gent
b87f20e2dc
Make instance missions reset upon warping out
2020-10-15 17:04:38 -04:00
Gent
d4aed0abf4
Add support for unique instances
2020-10-15 11:46:53 -04:00
Zenpock
bd34bb294c
Instance Stuff
...
custom instance commands
warping takes you into instances
npcs show up only in the instance they are supposed to be inside.
2020-10-15 11:44:15 -04:00
5a80c53e79
Remove the pointer to the deallocated chunk from the current player/NPC.
...
This fixes the Great Crash Bug(tm).
2020-10-15 04:36:38 +02:00
6ee5e6d1ae
Load NPC angles from NPCs.json.
2020-10-14 02:34:00 +02:00
63414ea9a2
The /summon command can now spawn up to 100 NPCs at a time.
...
Note that /unsummon can only remove one at a time.
2020-10-13 21:50:14 +02:00
Gent
1564cc7724
Make proximity NPC search a helper function
2020-10-10 23:18:01 -04:00
7a83a3b45c
Merge pull request #131 from JadeShrineMaiden/bugfix
...
Bugfixes
2020-10-07 19:52:11 +02:00
606384445c
Added /summonW and /unsummonW gruntwork commands.
...
Also:
* Filled in the battery fileds in the REWARD_ITEM packets in
MissionManager.
* Removed redundant NPC_ENTER in npcSummonHandler()
2020-10-07 19:29:59 +02:00
7caa73caca
Bugfixes
...
* Groups can now be abandoned using the "leave group" button.
* Non-group passive powers no longer buff the group leader instead of buffing the summoner.
* Adjusted various warning causing code pieces.
* Adjusted potions and battery prices.
2020-10-07 18:25:49 +01:00
Gent
4873eba160
Add overload to updateNPCPosition with rotation arg
2020-10-06 17:57:46 -04:00
661070dc3a
Cleaned up whitespace.
...
Incantation: sed -i 's/[ \t]*$//g' src/*.[ch]pp
Also switched BuddyManager from tabs to spaces using vim's :retab command.
2020-10-05 02:03:13 +02:00
4cd7b7cb53
added basework for instancing
2020-09-30 20:44:37 -05:00
Gent
941e986ee1
Fix incorrectly set item cost
2020-09-30 13:30:19 -04:00
884b844d65
minor refactoring
2020-09-28 13:11:13 -05:00
6ea47ddb56
Fixes.
...
* Mobs should account for height when aggroing on nearby players
* We don't need to keep track of lastHealTime for each player separately
* Warp attendants no longer steal the players weapon and money
2020-09-27 19:58:37 +02:00
kamilprzyb
d4f1515f5d
Time to go, gumballs and nano potions ( #113 )
...
* set up "go to the time machine" button working
* warping to the past now sets PayZoneFlag and removes all active missions
* added gumballs functionality
* added nano potions functionality
* formatting fix
2020-09-25 00:35:27 -05:00
874479d1cf
fixed NPC spawning bug
2020-09-24 21:32:14 -05:00
8f84c4c2f8
updateNPCPosition now tracks chunks
2020-09-24 20:58:20 -05:00
279cb78d5f
Mob-related cleanup.
...
* NPCs now keep track of their chunk information like PlayerView does
for players
* NPCManager::sendToViewable() parallels PlayerManager::sendToViewable()
* Nano damage and debuffs now count as attacking a mob
* Mobs will de-aggro if something else killed their target
2020-09-25 02:00:26 +02:00
72d625fd8d
Summoned mobs are now actually treated as mobs.
...
Unfortunetly, this necessitated keeping around yet more JSON objects for
the duration of the server's runtime.
It also involved unifying the way NPC IDs are handled, such that they
may be allocated and deallocated out of order.
If any NPCID-related bugs occour, this commit should be regarded as
the prime suspect.
2020-09-25 00:51:18 +02:00
4caca07856
Merge pull request #109 from gsemaj/slider
...
Basic slider implementation
2020-09-23 14:49:26 -05:00
Gent
f2596bfb6a
Add NPC chunk management + Generalize lerp
2020-09-23 12:06:25 -04:00
kamilprzyb
016c48645e
adjusted timestamp function to always return value in seconds
2020-09-23 11:05:18 +02:00
Gent
7dfc888552
Basic slider implementation
2020-09-23 00:08:51 -04:00
kamilprzyb
076f89927d
changed vehicle iTimeLimit to be stored in seconds instead of miliseconds
2020-09-22 21:49:24 +02:00
kamilprzyb
7ba9b9a54f
replaced high_resolution_clock with system_time for timestamps
2020-09-22 21:15:47 +02:00
kamilprzyb
5a58908462
vehicle has a proper expiration day when bought, implemented checking expired vehicles while login
2020-09-22 13:16:09 +02:00
CakeLancelot
adf017b07c
Move from isGM to Account Levels ( #106 )
...
Co-authored-by: dongresource <dongresource@protonmail.com>
2020-09-22 04:26:12 +02:00
4cc1cf4f7e
minor chunk refactor
2020-09-21 14:55:34 -05:00
CakeLancelot
77df7b7160
Merge pull request #92 from gsemaj/crocpot
...
Implement Croc Pot item combining
Fix vehicle type override
2020-09-20 13:40:36 -05:00
Gent
c6ec1c46c2
Add documentation for getItemType()
2020-09-19 16:38:50 -04:00
ce9285bab5
support for /unsummon
2020-09-18 16:24:15 -05:00
Gent
b929d12902
Implement Croc Pot item combining
2020-09-17 23:55:57 -04:00
9f78735caa
fixed socket reference bug
2020-09-17 22:44:37 -05:00
f4db0830ba
huge refactoring, chunking added
2020-09-17 17:45:43 -05:00
e79f179628
Mobs respawn now.
...
Began work on mob logic. Also cleaned up TableData a little.
2020-09-17 01:43:48 +02:00
Gent
148d90f4f1
"Boosts and potions!"
...
Fixed crate opening such that the item has an iOpt of 1.
2020-09-14 18:36:50 +02:00
Gent
a976fef2b4
Implement vendor stack logic
2020-09-14 10:25:15 -04:00
Gent
da8c833587
Implement buyback
...
Sellability tweak
Add additional item categories
2020-09-14 10:25:15 -04:00
Gent
c91022030c
Load item tables + price implementation
2020-09-14 10:25:15 -04:00
Gent
f55cc8f36d
Load vendor tables
2020-09-14 10:24:55 -04:00
131997f34f
Cleaned up all whitespace issues.
...
The incantation was: sed -i 's/[ \t]*$//g' src/*.[ch]pp
2020-09-14 16:07:05 +02:00
4c06163b51
Properly validate vendor logic.
...
Also, iTimeLimit should be 0.
2020-09-12 16:10:53 +02:00