Age | Commit message (Collapse) | Author | Files | Lines |
|
Allows the infusing of equipments with bonus item options.
This feature is constrained to clients of packet versions greater than or equal to `20150226`.
Item Options and their effects are defined server-side in `db/item_options.conf` and client side in `data/luafiles514/lua files/datainfo/addrandomoptionnametable.lub`
The ID of the option must tally with the correct index of the description provided in the client side lua file to avoid bugs.
IT_OPT_* keys and MAX_ITEM_OPTIONS macro are also exported from the source as constants.
An additional flag `disable_options` has been added to sql, and as `DisableOptions: true/false (boolean, defaults to false !!for equipments only!!)` to item_db.conf files.
Script commands documentation is also included.
SQL file updates are included.
Credits: [Smokexyz](https://github.com/Smokexyz)
Style and Script Fixes by [Asheraf](https://github.com/Asheraf)
Initial design Idea by [secretdataz](https://github.com/secretdataz)
|
|
|
|
|
|
- Fixes a crash that would occur when an item_db2 inherited item was
missing Script, OnEquipScript or OnUnequipScript while its item_db
counterpart had it.
Signed-off-by: Haru <haru@dotalux.com>
|
|
See https://github.com/Reviewable/Reviewable/wiki/FAQ#how-do-i-tell-reviewable-that-a-file-is-generated-and-should-not-be-reviewed
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Sql -> struct Sql
- SqlStmt -> struct SqlStmt
- SqlDataType -> enum SqlDataType
This is expected to improve compile time, by removing #include cycles (and forward declaring instead)
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Add all missing -Wformat flags into configure.
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
- To convert a renewal database, compile the server and plugin as
renewal, and to convert a pre-renewal database, compile both as
pre-renewal.
- This is a necessary evil, for future compatibility.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Improved compatibility, portability and standards conformance.
- Since it is not possible to portably and reliably re-use the core's
symbols in plugins, symbols are no longer exported unless explicitly
required, in the UNIX builds. This mimics the Windows behavior and
adds HPM compatibility to OSes such as FreeBSD. Credits to Andrei Karas
for making this possible.
- For convenience, it is no longer necessary to call GET_SYMBOL, since
the plugin will automatically import all the available symbols when
it's loaded, depending on the included headers.
- Plugins are now supposed to include the "common/hercules.h" header
before including anything else. Incluing common/HPMi.h,
common/cbasetypes.h or conf/core.h is no longer necessary, as those
are guaranteed to be automatically included by hercules.h.
- HPM API version bumped to 1.1.
Signed-off-by: Haru <haru@dotalux.com>
|
|
include stackable ones.
Implement ForceSerial option in Package Item Database to force serial for
any item.
Implement ForceSerial option in item database to force serial for any item.
Implement Merge Client interface to merge stackable items with serial numbers ( check npc/other/item_merge.txt ).
|
|
- Include directives are now directory-independent.
- This will allow building plugins from other directories in future.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Since there (currently and in future) is no difference between the
table structure for renewal and pre-renewal databases, it makes no
sense to have extra code that makes a distinction between their names.
A server will always use either one or the other, never both at the
same time.
- If you have a mob_db_re, mob_skill_db_re and/or item_db_re table,
please rename it to mob_db, mob_skill_db and/or item_db_re,
respectively.
- No upgrade script provided. I'd like to remind everyone that these
tables are optional (and deprecated), and they are only offered for
convenience for those who need them for web control panels and similar
software.
Signed-off-by: Haru <haru@dotalux.com>
|
|
- login_server, char_server, map_server as well as the tools (mapcache)
now have a common command line arguments handling mechanism.
- All of them now accept `--help` (`-h`), `--version` (`-v`) and
`--load-plugin`.
- login_server now accepts `--login-config` and `--lan-config` instead
of relying on positional arguments to override those files. The old
syntax will no longer work, please update your custom startup scripts.
- char_server now accepts `--char-config`, `--inter-config`,
`--lan-config` instead of relying on positional arguments. The old
syntax will no longer work, please update your custom startup scripts.
- mapcache now accepts `--grf-list`, `--map-list`, `--map-cache`,
`--rebuild` in place of, respectively, `-grf`, `-list`, `-cache`,
`-rebuild`.
- A new macro `CMDLINEARG()` is provided, to help defining new command
line argument handlers (i.e. in plugins). the `addArg()` call is still
required, but its syntax has changed. The `help` argument is now of type
`const char *` rather than a function pointer, and it is supposed to
contain the message to show in the `--help` screen. Pass `NULL` if no
help message is desired.
Signed-off-by: Haru <haru@dotalux.com>
|
|
This includes, and is not limited to: mixed or wrong indentation, excess
whitespace (horizontal and vertical), misalignment, trailing spaces.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Includes in some files weren't sorted alphabetically. Special thanks
to KeiKun.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
http://hercules.ws/board/topic/4283-introducing-hpm-datacheck/
Signed-off-by: shennetsind <ind@henn.et>
|
|
Ready for plugin use.
Thanks to Haruna
Signed-off-by: shennetsind <ind@henn.et>
|
|
Special Thanks to Haru!
Signed-off-by: shennetsind <ind@henn.et>
|
|
The field is now NULL when the value is not provided, instead of MAX_LEVEL.
Special Thanks to Mvmbles for bringing the issue to our attention.
Signed-off-by: shennetsind <ind@henn.et>
|
|
- HPMi->addCommand is now addAtcommand, dropped usage of ACMD_A()
- HPMi->addScript is now addScriptCommand, dropped usage of BUILDIN_A()
- HPMi->addCPCommand is now addCPCommand, dropped necessity of CPCMD_A()
- HPMi->addPacket is now addPacket, 5th param (HPMi->pid) is now automatically filled by the macro, therefore param count drops to 4 (packetID,packetLength,packetFunction,packetIncomingPoint).
There is no longer necessity to check for the availability of the commands, the macros will do it on their own and drop a warning about it upon failure.
These changes won't affect pre-compiled plugins.
Signed-off-by: shennetsind <ind@henn.et>
|
|
- Updated db2sql plugin to reflect the latest changes.
- Fixes bugreport:7835, special thanks to ossi0110
http://hercules.ws/board/tracker/issue-7835-db2sql-plugin-error/
Signed-off-by: Haru <haru@dotalux.com>
|
|
Implements the 'BindOnEquip' item db field which determines whether the piece of equipment should bind to the character upon being equipped.
When a character tries to equip such a item for the first time a dialog shows up asking the character to confirm whether to equip the item or not, and notifying the character that by equipping the item it will become bound to the character, and therefore unable to be used by another character.
Special Thanks to Beret for all the information, Haruna for testing.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Would turn map server into minimal mode regardless of the --db2sql option being used.
Signed-off-by: shennetsind <ind@henn.et>
|
|
makes it easier to keep the table structure up to date
Signed-off-by: shennetsind <ind@henn.et>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
May be used as ./map-server --db2sql or by typing "server tools db2sql" within map-server console parse.
Special Thanks to Haruna.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Signed-off-by: Haru <haru@dotalux.com>
|
|
- Ensured final end-of-line character in every file.
- Corrected cases of mixed line endings (mostly CR and CRLF within the
same file.)
- Removed extra BOM from some scripts, since it causes a parsing error.
Signed-off-by: Haru <haru@dotalux.com>
|
|
Signed-off-by: Matheus Macabu <mkbu95@gmail.com>
|
|
Wasn't taking in account the delay_consume flag which actually means the item type is 11 not 2.
Also added a extra warning in the item packages parser.
Special Thanks to ossi0110 for bringing this up.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Fixed "random" item package rates, special thanks to Beret.
Also, added the missing (+130) item package calls (special thanks to Streusel!)
Signed-off-by: shennetsind <ind@henn.et>
|
|
http://hercules.ws/board/topic/1244-official-item-grouppackagechain/
Also
Further implemented itemdb.c/storage.c interfaces, and a minor update to db2sql plugin.
Signed-off-by: shennetsind <ind@henn.et>
|
|
Special Thanks to Takkun~!
Signed-off-by: shennetsind <ind@henn.et>
|
|
don't ask me why.
Special Thanks to Takkun~! :D
Signed-off-by: shennetsind <ind@henn.et>
|
|
Also Introducing the official DB2SQL plugin to quickly update the .sql db files.
http://hercules.ws/board/topic/1105-hercules-wpe-free-june-14th-patch
Signed-off-by: shennetsind <ind@henn.et>
|