Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Registration of Packet 0x2D #1336

Closed
wants to merge 47 commits into from
Closed

Conversation

canerksk
Copy link
Contributor

No description provided.

- Added: New trigger @HitReactive Reactive Armor plays a key role in the action mechanism and is currently under very fixed rules. It has been added as a new trigger with some variables to make it a bit more flexible.
	@HitReactive
	Local.Sound (r/w) =Sound ID, If it is blank or zero, no sound is produced. (Default: 01F1)
	Local.EffectID (r/w) = Effect ID, If it is empty or zero, no effect will occur. (Default: 0374a)
	Local.Damage (r/w) = This is the more1l, or PolyStr, value coming from the reactive armor spell to i_rune_reactive_armor.
	LOCAL.RefDamage (r/w) = The amount of damage that will be reflected to this other party
	LOCAL.RedDamage (r/w) = Amount to be deducted from damage received
	LOCAL.ReactiveDamType (r/w) = Type of damage received (Default: DAMAGE_FIXED andDAMAGE_REACTIVE)
	NOTE;
		1. If no RefDamage or RedDamage values ​​are entered, the system defaults to the Reactive Armor Effect value.
		2. No damage amount can be less than 1.
If the NOREJOIN tag is one, the player cannot come back to life on that corpse. That is, the player comes back to life but not on the corpse.
	This tag does not prevent the player from coming back to life, it just prevents them from respawning on that corpse. The player always comes back to life, but not on that corpse.
If this setting is enabled, pets you own will appear to you with the original noto (old behavior). If this setting is not enabled, the assets you own will always appear natural to you. This setting only applies when the owning character is looking at the asset they own. It does not apply when someone else is looking at the asset you own.
f_onserver_mode

f_onserver_resync_start
f_onserver_resync_restart
f_onserver_resync_failed
f_onserver_resync_success
f_onserver_resync_finish

f_onserver_save_stage
f_onserver_save_force
f_onserver_save_try
f_onserver_mdb_connect
f_onserver_mdb_query
f_onserver_mdb_execute
f_onserver_mdb_close
f_onserver_mdb_tick
@Logout trigger When NPCs (mounts) are logged out of the session in any way, i.e. mounted or minimised, they will log out (disconnect) but will not trigger.
Note: Made in the same branch to avoid OptionFlag conflicts.
EventsPet = removed
EventsNPC
EventsNPCAnimal
EventsNPCMonster
EventsNPCMountable
EventsNPCShop
EventsChar
EventsCharPlayer
EventsCharStaff
EventsPlayer: removed
EventsItem
EventsItemWeapon

Note: All events were tested one by one and they work without any problems.
	SRC/I = Char (Player)
	ARGO = Gold
	RETURN 1 = Prevents depositing gold into the bank.
	It works just like DROPON_ITEM/ITEMDROPON_ITEM.
	When using the virtual gold feature, there was no trigger triggered when physical gold was deposited into the bank, the Dropon_Item was not working because it was triggered lower down, and instead of moving the Dropon_Item up, a separate trigger was added to track the money on the server more easily from another location.

Tested.
…ngs WOPTalkMode

	In some clients, different operations can be performed in return for this, for example, if this talkmode went from sphere as TALKMODE SPELL, the operation is performed according to this incoming talk mode according to the client versions. Here, the possibility of changing the talkmode according to the client version used is given. By default, TALKMODE_SPELL
	Default talk mode: TALKMODE_SPELL = 10
	Sphere.ini;
	WOPTalkMode=0/14

	Trigger;
	@spellcast
	Local.WOPTalkMode=0/14

Tested.
If the memory owner is not present, skills do not fail when taking damage, but if the memory owner is alive, skills fail when taking damage.

Tested.
	CLOSEVENDORMENU <vendor uid> OR CLOSEVENDORMENU empty if empty, 14 squares will close the sales menu of all near shops.
		If no value is entered, it closes the sales menu of all vendors in the surrounding area (14 squares). If a value is entered and this value is the vendor uid, it closes the sales menu of the vendor belonging to that serial number.
	CLOSECONTAINER <container uid>
		Actually, there is already a package for this, but since dealing with the package takes a long time, such a command was needed. When CLOSECONTAINER <container uid> is entered, that container is closed in the interface.

Tested.
If you are around an entity that you own and you are trying to open a bank next to a bank, the "bank" command is perceived as a pet command and the bank does not open. There is no problem when you type "bank" after mounting the mount, but "bank" does not work when you dismount. (Issue Sphereserver#1331)

tested.
Previously, many memories did not have morex information, but now for some reason many memories have morex information and for this reason the trigger was not triggered in almost most of the memories, the morex query was removed. Also, the slang did not represent the memory item,
a function that lets you get the final noto title of the character (read only for now)
Trigger was triggered after values ​​were changed and hits, stam, mana gain could not be turned off.
***************************************************************************/
PacketMobileAttributes::PacketMobileAttributes(const CChar *character) : PacketSend(XCMD_MobileAttributes, 17, PRI_NORMAL)
{
ADDTOCALLSTACK("PacketDeathMenu::PacketDeathMenu");
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy paster error

Copy link
Contributor

@Jhobean Jhobean left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy paste error.

@cbnolok
Copy link
Contributor

cbnolok commented Nov 26, 2024

Could you explain why is bFull needed? Btw i'd name that fFull, to be consistent with sphere conventions

@canerksk
Copy link
Contributor Author

canerksk commented Nov 26, 2024

Could you explain why is bFull needed? Btw i'd name that fFull, to be consistent with sphere conventions

maybe you don't always want to send this MobileAttribute?

@canerksk canerksk closed this Nov 26, 2024
@canerksk canerksk deleted the 02d-packet branch November 26, 2024 14:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants