* Fix Dvalin battle
See https://github.com/Anime-Game-Servers/Grasscutter-Quests/pull/25.
This is entirely untested and there's a 99% chance it's broken, I'm just submitting it as a draft PR so that I don't forget about its existence.
Co-Authored-By: mjolsic <21289772+mjolsic@users.noreply.github.com>
* Update protos
* 3.4 protos
* Fix
Now builds successfully, don't have the time to check if I should have specified true instead of false for withChildQuests, or if this functions as intended.
* Change from false to true
Per what smileoflove has been told on Discord
* 3.5
* Remove the Dvalin crap from this PR
Git is so confusing
* Update version
* Apply README changes from `origin/development`
* Remove unnecessary debugging information
---------
Co-authored-by: mjolsic <21289772+mjolsic@users.noreply.github.com>
Co-authored-by: KingRainbow44 <kobedo11@gmail.com>
* Natural satiation decreasing
Graphic showing satiation when eating (usually)
* Reworking values to match original
* Little fixes
* Satiation bar matches real values
Revival correctly updates bar
* Greatly simplify handling
Some fixes
* Inline variables
Add TODO for bug
* Satiation works correctly
Finally it all works as intended
* Remove unnecessary packets
* Improve satiation reduction handling
* [ScriptLib] Query player when not get entity from scene
* Fix NPE when doing quests
* Add QUEST_CONTENT_SKILL trigger
Q353 need it
* Add some missing fields that contain in scene scripts
* Add a lua table serializer implement with jackson
This do not replace the original one,it is useful when debug
* Fix point_array type error
* feat: fix space
* Add realm switching
Fix realm unlock items
* Implement exiting teapot
* Implement home level rewards
* Fix small issues
* Fix call issue
* Add 'seen unlock' packets
* Fix Sumeru Main House bricking accounts
This is only for the house, not the full realm
* Fixed realm 5
Main house needs to be placed manually for Sumeru realm (module 5) as the resources for defaults in Sumeru realm are missing. Sumeru main house cannot be exited from the door, issue due to the same missing res.
* Fix Grass main house bricking accounts
* Remove references
* Formatting change (web editor)
* Whitespace & Formatting
* Whitespace
* Make 'seen' status persistent
* Fix misnamed field
* Revert "Fix misnamed field"
This reverts commit 21ef404e14.
* Implement gaining trust (realm exp)
Add gaining trust by crafting
Add gaining trust via `/give`
Show trust in djinn menu
* Interior check for prevScene
* Correct positions & rotations
Return to front of main house when exiting from inside
* Update HandlerBackMyWorldReq.java
---------
Co-authored-by: Magix <27646710+KingRainbow44@users.noreply.github.com>
Co-authored-by: GanyusLeftHorn <1244229+GanyusLeftHorn@users.noreply.github.com>
* replace the deprecated api
* update proto
* delete music game
* fixed codes
* fix costume switch
* fix mail bug
* Bump version number.
* Re-add max boss chest number
Co-authored-by: GanyusLeftHorn <1244229+GanyusLeftHorn@users.noreply.github.com>
* Deserialization support for tsv files
* Benchmarking
* Apparently moving the setter out of the lambda fixed the setAccessible issue
* Thread it
* Use AllArgsConstructor instead of field reflection
* Clean up AllArgsConstructor TSV deserialization
* Refactor TsvUtils
* Remove AllArgsConstructors from Excels
* Set field accessible
* [WIP] TSJ improvements
* [WIP] More TSV stuff
* [WIP] More TSV stuff
* Working TSV parser (slow)
* Load Excels in TSJ > JSON > TSV priority
* Avoid iterating over every offline player
* getAllPlayers by stream
* Use the new method without changing the old signature
* Annotate deprecated `getAllPlayers`
* Add build (compile) script: gradlew jar
* Move server and services log levels to ConfigContainer, ability to enable/disable show packet payload and loop packets
* Add some loop packets to known list
* [Security][Bugfix] Fix directory traversal exploit
1.The first slash will act as root path when resolving local path, so directory traversal is possible
2.Filter the illegal payload to prevent directory traversal
3.This also fix the bug about not loading the files in data folder when querying `/hk4e/announcement/`
* Fix formatting
* Update src/main/java/emu/grasscutter/server/http/handlers/AnnouncementsHandler.java
* 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>
* 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>
* feat:cooking food ingredient(aka:compound) implementation
Implement food ingredient(compound) feature.Need a thorough test and still has some work to do.
* small bug fix;implement fish processing
* Update src/main/java/emu/grasscutter/server/packet/send/PacketItemAddHintNotify.java
Co-authored-by: Luke H-W <Birdulon@users.noreply.github.com>
* Update Inventory.java
* Update Inventory.java
Co-authored-by: Luke H-W <Birdulon@users.noreply.github.com>
-De-hardcode elemental orb values
-De-hardcode exp items
-Change ShopChest format (temporary, drop system overhaul will replace it entirely)
-Food healing actually uses Ability data for real HP amounts
* 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>
* will be able to change home bgm.
* feat: unlock homeworld bgm and set homeworld bgm.
* Update src/main/java/emu/grasscutter/game/home/GameHome.java
* Update GameHome.java
* Get default unlocked home bgms from HomeWorldBgmData
* fix: duplicate home items by sending packet
* Move Data, Plugin, Script, Packet access from Strings to Paths
- No longer dump default Data files to folder on launch
- Allow Scripts to be loaded from Resources zip
- Lay groundwork for Plugins to be loaded from zip
* 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>
* 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>
* fixed gadget hp properties and invincibility handling
* Allow killing of hp locked entities, if the damage is higher then the hp
Co-authored-by: hartie95 <mail@hartie95.de>