Commit Graph

268 Commits

Author SHA1 Message Date
KingRainbow44
a3970f8e43
Format code 2023-04-02 21:34:07 -04:00
KingRainbow44
9fbb7fb3be
Continue updating/refactoring classes
Most code is matched from `Grasscutter-Quests`.
2023-04-01 22:17:10 -04:00
KingRainbow44
daa51e53b7
Copy some files from Grasscutter-Quests
NOT completely finished, nor is it completely done. Protocol issues remain! (including lack of packet IDs)
2023-04-01 18:06:30 -04:00
KingRainbow44
262ee38ded
Create files from Grasscutter-Quests
these files are NOT directly compatible with Grasscutter, and require additional modifications to the codebase to work.
2023-03-31 23:58:12 -04:00
KingRainbow44
fc05602128
Run Spotless on src/main 2023-03-31 22:30:45 -04:00
KingRainbow44
15e2f3ca34
Run IntelliJ IDEA code formatter 2023-03-31 17:19:26 -04:00
hamusuke
3ab3d5bc04
Simply implement achievement system and add achievement command (#2068)
* Implement achievement system

* Update src/main/java/emu/grasscutter/command/commands/AchievementCommand.java

Co-authored-by: Der Chien <b03902015@ntu.edu.tw>

* fix: redundant codes

* fix: redundant codes

* Update language files

---------

Co-authored-by: Der Chien <b03902015@ntu.edu.tw>
2023-02-26 00:14:27 -05:00
yeyeye
71a1e31d37
update gc 3.4 (#2041)
* update 3.4

* update3.4

* update 3.4

* update 3.4

* Add files via upload

* Delete SetPropCommand.java

* update 3.4 area id

* update version

* exchange cmdid

* exchange cmdid

* exchange cmdid

* my fault

* update AiSyncInfo
2023-02-18 22:18:27 -05:00
AnimeGitB
09f392bb5b Add FIGHT_PROP_CUR_DEFENSE alias to setstats (closes #1929) 2022-11-05 15:36:52 +10:30
jie65535
47911aa16e
Fix Mail SendToAll Freeze (#1913)
* Avoid iterating over every offline player

* getAllPlayers by stream

* Use the new method without changing the old signature

* Annotate deprecated `getAllPlayers`
2022-10-30 20:03:30 +10:30
github-actions
d99a50b80f Fix whitespace [skip actions] 2022-10-26 12:31:30 +00:00
natsu
5b6698f583
Extend setConstCommand "all" (#1884)
* Extend give command "talent"

* Update src/main/java/emu/grasscutter/data/excels/AvatarSkillDepotData.java

Shorten IntStream for getCombatSkills

Co-authored-by: Luke H-W <Birdulon@users.noreply.github.com>

* Fix setSkillLevel to work during avatar construction
Shortening getCombatSkills

* changeSkillLevel now acts as intermediate operation to fetch skillIds

* setSkillLevel changes to allow out of range levels to be normalized

* Update src/main/java/emu/grasscutter/command/commands/GiveCommand.java

Removing recalcStats since it's redundant

Co-authored-by: Luke H-W <Birdulon@users.noreply.github.com>

* Major changes and cleanup:
- AvatarSkillDepotData: removed getCombatSkills since it's unused
- TalentCommand: shortened /talent all using getSkillsAndEnergySkill
- GiveCommand: changed changeSkillLevel to setSkillLevel
- Avatar: delete changeSkillLevel and moved the operation inside setSkillLevel,updated skillId to Integer to catch special cases from GiveCommand

* Small cleanup:
Removed the special case from Avatar to be handled inside of GiveCommand

* Added "all" parameter to SetConst

* Changed all to [all] int SetConstCommand usage

Co-authored-by: Luke H-W <Birdulon@users.noreply.github.com>

Co-authored-by: Luke H-W <Birdulon@users.noreply.github.com>
2022-10-24 14:28:39 +10:30
TotalyNotOndre
496cd671da
add Quest command alias (#1891) 2022-10-24 12:32:35 +10:30
AnimeGitB
7d1a7b501b Added "s" alias to SpawnCommand (closes #1840) 2022-10-24 10:32:10 +10:30
natsu
2b08738043
Extend give command "skill level" & shortening /talent all (#1865)
* Extend give command "talent"

* Update src/main/java/emu/grasscutter/data/excels/AvatarSkillDepotData.java

Shorten IntStream for getCombatSkills

Co-authored-by: Luke H-W <Birdulon@users.noreply.github.com>

* Fix setSkillLevel to work during avatar construction
Shortening getCombatSkills

* changeSkillLevel now acts as intermediate operation to fetch skillIds

* setSkillLevel changes to allow out of range levels to be normalized

* Update src/main/java/emu/grasscutter/command/commands/GiveCommand.java

Removing recalcStats since it's redundant

Co-authored-by: Luke H-W <Birdulon@users.noreply.github.com>

* Major changes and cleanup:
- AvatarSkillDepotData: removed getCombatSkills since it's unused
- TalentCommand: shortened /talent all using getSkillsAndEnergySkill
- GiveCommand: changed changeSkillLevel to setSkillLevel
- Avatar: delete changeSkillLevel and moved the operation inside setSkillLevel,updated skillId to Integer to catch special cases from GiveCommand

* Small cleanup:
Removed the special case from Avatar to be handled inside of GiveCommand

Co-authored-by: Luke H-W <Birdulon@users.noreply.github.com>
2022-10-18 19:45:24 +10:30
natsu
953272489d
Extend talent command "all" (#1850)
* Extend talent command "all":
Added talent option to set all talents (n, e, q) at once
Modified error message to cover edge cases when player entered talent level lower than 1

* Update src/main/java/emu/grasscutter/command/commands/TalentCommand.java

some suggested changes

Co-authored-by: Luke H-W <Birdulon@users.noreply.github.com>
2022-10-13 12:46:59 +10:30
Luke H-W
f6ce7e349d
Add shutdown alias to StopCommand 2022-10-04 01:33:01 +10:30
GanyusLeftHorn
5ffc07cf59
3.1 Support (#1808)
* Update 3.0 protos

* Update classes to match protos

* Fix RegionHandler versions

* 3.0 Opcodes

* Fixed Gadget Spawning

Original Commit Message: fixed gadget spawning ty MJDerp
Gitea Author: yh0Nathan

Co-authored-by: yh0Nathan <yhonathancaleb@gmail.com>

* Make PointData compatible with alternative PointData

Original Commit Message: Make PointData compatible with windied scene points.
Gitea Author: GanyusLeftHorn

Co-authored-by: GanyusLeftHorn <1244229+GanyusLeftHorn@users.noreply.github.com>

* Add scene tag for Vanarana.

Original Commit Message: Add scene tag for Vanarana.
Gitea Author: GanyusLeftHorn

Co-authored-by: GanyusLeftHorn <1244229+GanyusLeftHorn@users.noreply.github.com>

* Add Sumeru expeditions.

Original Commit Message: Add Sumeru expeditions.
Gitea Author: GanyusLeftHorn

Co-authored-by: GanyusLeftHorn <1244229+GanyusLeftHorn@users.noreply.github.com>

* Update game version to 3.0.0

* versionFix must be >= 50 not == 50 in RegionHandler

* Add new 3.0 Reliquary and SkillParticleGeneration data

Original Commit Message: Repair 3.0 added Reliquary 3-in-1 on the crafting table. Add skill particle generation info for Tighnari,Collei and Dori
Gitea Author: Roly

* Actually fix RegionHandler

* Remove asset names from json and comments

* Add scene areas for Sumeru desert to /prop um

* Added New MaterialType

* Change version to 3.1.0

* funny welcome message back

* Fix pyramid skill issue.

* Fix pyramid and event scene tags without ugly bruteforce.

* Remove backrooms chat welcome message.

* Incorporate suggestions.

* RoomSceneId and empty list checking.

Co-authored-by: Benj <benjamin7006@gmail.com>
Co-authored-by: yh0Nathan <yhonathancaleb@gmail.com>
Co-authored-by: Kokoboy <anushkumar222001@gmail.com>
Co-authored-by: nitro <31241699+nitrog0d@users.noreply.github.com>
Co-authored-by: Vexeone <vexeone@gmail.com>
2022-09-28 04:53:19 +02:00
Alexander Hartmann
08f361954a
Extend spawn command (#1777)
* add missing EntityTypes

* small command refactorings and improvements
* move common command patterns and methods to CommandHelpers
* let the spawn command detect the entityType instead of spawning every entity as EntityVehicle
* add extra options for spawning gadgets for better debuging and testing

* More spawn command additions and cleanups+EntityVehicle changes
* Moved remaining patterns from GiveCommand and ClearCommand to CommandHelpers
* Added patterns for hp, maxhp, atk, def and (monster)ai for the spawn command
* Moved intParam parsing via regex to the CommandHelpers
* Read most of EntityVehicle stats from the ConfigGadget instead of hardcoding them

Co-authored-by: hartie95 <mail@hartie95.de>
2022-09-17 02:34:20 +09:30
Kawaa
210e9e9732 Added a directive to fix some minor bugs (#1744)
* Pull request made after merging the latest version

* Update src/main/resources/languages/ja-JP.json
2022-09-05 23:53:40 +09:30
jie65535
32289e2d80
Add permission clear and list commands (#1715)
* Add permission clear and list commands

* Add Account clear permission
2022-08-27 21:16:27 +09:30
AnimeGitB
f5c8959688 Update SetPropCommand strings, send cmd usage on target fail 2022-08-25 15:15:17 +09:30
AnimeGitB
5565a13df8 Fix account deletion 2022-08-25 10:52:10 +09:30
AnimeGitB
dd10dcc09b Fix HelpCommand missing aliases 2022-08-25 10:31:15 +09:30
AnimeGitB
fbf3dbbf77 Move vehicle fightprop hacks 2022-08-25 00:23:00 +09:30
Benj
cb97ac8250 Fixed Gadget Spawning
Original Commit Message: fixed gadget spawning ty MJDerp
Gitea Author: yh0Nathan

Co-authored-by: yh0Nathan <yhonathancaleb@gmail.com>
2022-08-24 11:34:26 +09:30
github-actions
c517b8a2c9 Fix whitespace [skip actions] 2022-08-21 11:33:54 +00:00
AnimeGitB
3fca950050 Make TalentCommand show off new Translate function 2022-08-21 20:53:37 +09:30
AnimeGitB
955004343f Improve translate function
Make commands pass ints and floats instead of manually casting them to string first
2022-08-21 20:53:37 +09:30
AnimeGitB
48d31e45ed Fix talentcommand message key 2022-08-19 16:52:02 +09:30
AnimeGitB
fb1bacb0f8 Refactor avatar skilldepot and constellation/talent changing
Ensures Traveler retains talent levels and constellations on inactive elements when switching elements.
Relevant for any other skillDepot-changing activities like Windtrace too, though keeping those in the db might not be as useful.

Refactor avatar talent upgrade and access
Refactor skillExtraCharges
2022-08-19 16:43:57 +09:30
AnimeGitB
efa69c007d Change unlocked scenes from lists to sets 2022-08-18 22:38:55 +09:30
AnimeGitB
325fe6c44a Fix TalentCommand for Traveler 2022-08-11 16:21:27 +09:30
GanyusLeftHorn
04f0fae898 Handle Unlocking of Waypoints and Statues (#1608)
Original commits:

* Add necessary protos for scene point/area unlocking.

* Rename PlayerOpenStateManager to PlayerProgressManager and move data to Player.

* Handle unlocking of waypoints.

* Add primo rewards for waypoint unlock.

* Statue unlocking.

* Add statue quest on player login.

* I forgor to add an unlock command.

* Give EXP as reward, fire quest trigger, make EXP UI show up.
2022-08-10 19:33:47 +09:30
KingRainbow44
89575f587e Move PlayerTeleportEvent occurrences into World 2022-08-01 21:25:29 -04:00
KingRainbow44
1de402bd6f Merge branch 'development' into more-events 2022-08-01 21:13:19 -04:00
AnimeGitB
b80126fdda Add lock function to SetStatsCommand 2022-07-28 04:23:58 -07:00
AnimeGitB
883b6f1fcc [Bug] New avatars always created with C0 constellation
Fixes #1552
2022-07-26 17:56:49 +09:30
lactose
59a412cc83 Set Constellation Command (#1565)
Original commits:

* create `SetConstCommand` class and translations

* (partially) functional `setconst` command

* fixed punctuation

* added success message

* implemented `SetConstCommand`

* added translation keys

* update keys

* refactor + automatic reload

* Nitpick (Co-authored-by: AnimeGitB <AnimeGitB@bigblueball.in>)
2022-07-26 16:44:17 +09:30
KingRainbow44
41ec2316e4 Attempt to fix the teleport command. 2022-07-24 13:23:51 -04:00
KingRainbow44
90cded16d9 Merge branch 'development' into more-events 2022-07-24 12:05:35 -04:00
GanyusLeftHorn
d0edd39465 Read Open States from Excels (#1557)
* Make sure we never access PlayerOpenStateManager::map directly.

* Read OpenStates from excels.

* Add defaultState

* Replace hardcoded open states with the ones read from excels.

* Don't send change notify when unlocking on login.

* Add open state blacklist for default unlocks.

* Add a way to temporarily set open states for dev

* Remove old OpenState.java

* Fix UnlockAllCommand

* Change condType to an enum.
2022-07-24 00:12:07 -07:00
KingRainbow44
956d4023c7 Merge branch 'development' into more-events
# Conflicts:
#	src/main/java/emu/grasscutter/command/commands/TeleportAllCommand.java
#	src/main/java/emu/grasscutter/game/entity/EntityAvatar.java
#	src/main/java/emu/grasscutter/game/entity/GameEntity.java
#	src/main/java/emu/grasscutter/game/managers/mapmark/MapMarksManager.java
2022-07-22 17:52:58 -04:00
Melledy
e5ff253624 Add unlockall command to unlock all openstates 2022-07-22 09:26:00 -07:00
AnimeGitB
104e04f70a Change commands to use new usage message method. 2022-07-22 19:08:26 +09:30
AnimeGitB
2cfbe78184 Refactor Command usage and description strings 2022-07-22 19:08:26 +09:30
github-actions
ae2d1fe438 Fix whitespace [skip actions] 2022-07-21 00:22:26 -07:00
Melledy
408fa90728 Move config java files to their own package 2022-07-21 00:21:00 -07:00
Melledy
cc5b292bc3 Refactor Player::GetPos() -> Player::GetPosition() 2022-07-21 00:21:00 -07:00
Melledy
2e19e70fe1 Refactor game server managers to systems 2022-07-21 00:21:00 -07:00