Age | Commit message (Collapse) | Author | Files | Lines |
|
The @log command is the equivalent to tmwAthena's @l. It allows to log
a text as a transaction for documentation purpose.
The @logsay command works like @t on tmwAthena. It says something in
public chat while also logging it as a separate trasaction.
Reviewed-by: Thorbjorn
|
|
@kick disconnects the client connection of a character. The new error-
code 11 (ERRMSG_ADMINISTRATIVE_LOGOFF) is not supported by the client
yet. It will show a generic "The connection to server was lost" message
instead.
@kill kills the character by setting its HP to 0.
Added @kick transaction code I forgot in last commit. Considering that
this was just minutes ago I think that noone updated his database yet.
So I don't think that a new database version is justified for this.
Reviewed-by: Bertram
|
|
The @mute, @goto, @attribute and @announce commands now logs transactions
to the database.
Added new transaction codes to database. I've preliminarily added a lot
of codes for not yet supported commands so that we needn't do a database
update with every single commit which implements one.
Also using the equivalent "say" helper function in place of the
"GameState::sayTo" method in the command handler.
Reviewed-by: Kage
|
|
The @die chat command kills the evoking character by setting its hit
points to 0. The example permissions.xml assigns it to the "tester"
rights group and not "players" because server admins who are not aware
of this command might run into trouble when they assume that players
don't have a method to teleport to their spawn point voluntarily.
Resolves: mantis ticket #192
Reviewed-by: Jaxad0127
|
|
|
|
Resolves: Mana-mantis #269.
Reviewed-by: Jaxad0127.
|
|
(Readable in the log with debug level.)
Reviewed-by: Jaxad0127.
|
|
Reviewed-by: Jaxad0127.
|
|
Changes:
============================================================
For the account server:
------------------------------------------------------------
Old -> New
------------------------------------------------------------
net_accountServerAddress,
net_listenHost -> net_accountHost
net_accountServerPort -> net_accountListenToClientPort
net_accountServerPort +1 -> net_accountListenToGamePort
For the game server:
------------------------------------------------------------
Old -> New
------------------------------------------------------------
net_gameServerAddress -> net_gameHost
net_gameServerPort -> net_gameListenToClientPort
For the chat server:
------------------------------------------------------------
Old -> New
------------------------------------------------------------
-> net_chatHost
net_accountServerPort + 2 -> net_chatListenToClientPort
Special fallback feature, as requested by Freeyorp:
When the net_accountListenToClientPort (default to 9601)
is set, the 3 others ports will automatically offset from it,
if they're not set, following this rule:
net_accountListenToGamePort = net_accountListenToClientPort + 1
net_chatListenToClientPort = net_accountListenToClientPort + 2
net_gameListenToClientPort = net_accountListenToClientPort + 3
Resolves: Mana-Mantis #216.
Reviewed-by: Jaxad0127.
|
|
Reviewed-by: Jaxad0127.
|
|
|
|
It now takes length into consideration.
Reviewed-by: Chuck Miller
|
|
Trivial fix, so no review.
|
|
the public one.
|
|
|
|
Instead, let's use the actual rule: Id > 0.
Trivial fix.
|
|
Trivial also.
|
|
Trivial.
|
|
Since it's what is done for the other files in the project.
Trivial fix.
|
|
Reviewed-by: Bertram
|
|
Reviewed-by: Bertram
|
|
Reviewed-by: Bertram
|
|
@warp no longer takes a character. @charwarp was added to handle
that ('#' still means the player). Both can take a map name,
map id (preceded by '#') or '#' for the player's current map.
Logging of warp commands now logs destination map and player
warped (for @charwarp).
|
|
Reviewed-by: CodyMartin.
|
|
Trivial fix.
|
|
* Adding missing protocol.h
* Switching debugger symbols and compiler optimization on
* Show the Mana icon for executable files
|
|
Trivial fix.
|
|
This permits to avoid a memleak with the former vector form
and to use the 'place' variable when binding.
The badly prepared statements are also a bit better handled now.
With this patch, IMHO, the MySQL support is in shape.
Reviewed-by: Jaxad0127.
|
|
The static std::string date variable had two nasty problems.
Would it have been static or be named 'date',
and it would have not worked right.
I also made the logger add the proper date on the archived log
when changing the current day.
Resolved: TMW-Mantis #530.
Reviewed-by: Jaxad0127.
|
|
Also added an header to the autoattack.{h,cpp} files.
Big but trivial fix.
|
|
Reviewed-by: CodyMartin.
|
|
Trivial fix.
|
|
When registering or logging, The client is hashing the password
for sending it safely. And the server is hashing it also
to store it the same way. Hence, the password ends hashed twice,
which is correct because the server can't trust the client anyway.
At unregister attempt, the server wasn't hashing the password
before comparing it.
Also while on it, I made the corresponding SQL query use the try catch
method and only delete the account in memory when it's also done
on the Db.
Reviewed-by: thorbjorn, Freeyorp.
|
|
Also split updateDerivedAttributes and remove the calc check workaround.
Reviewed-by: Bertram.
|
|
Reviewed-by: Bertram.
|
|
Also fix movement speed dependency.
Reviewed-by: Bertram
|
|
Mainly for consistency with the client, and the general consensus was
that these numbered versions were clearer.
|
|
|
|
Also renamed MonsterClass::getType() to getId() since it was
misleading with the use of ThingType::getType()
and didn't represent the actual meaning, IMHO.
Trivial.
|
|
The server was trying to insert attributes value not in monster scope.
The monster code is to be rewritten anyway.
Resolves: Mana-Mantis #212.
|
|
No need to fiddle around with "startTransaction" booleans now that the
helper class is a little more intelligent. When the database is already
performing a transaction, no new one will be started.
|
|
Avoids having to remember to call rollbackTransaction and makes
transactions exception-safe (since the destructor of PerformTransaction
will be called when an exception is thrown).
|
|
This message can contain a lot of small database updates, which at least
on my system are way more efficient when performed in a transaction (now
it takes no more than 1 second vs. about 14 seconds before). Not saying
this is normal, my guess is that it's due to using full partition
encryption.
I've also prevented the thing from entering an infinite loop in the case
of a wrong message, and corrected some variable names.
|
|
Mainly merging a lot of short lines and removing pointless comments that
are just repeating what the code says.
|
|
Not only necessary on Windows, but also on Ubuntu (and probably Fedora)
This seems to be due to a recent change in how things are packaged.
Reviewed-by: Bernd Wachter
|
|
This is for developing/testing an experimental new resource manager that
downloads only the files it needs on demand.
Currently only used by the Mana Mobile project. Regular Mana client
ignores the setting.
Reviewed-by: Jared Adams
|
|
Don't try to notify the client when automatically removing unknown
items, since at this point the client hasn't connected yet.
Reviewed-by: Freeyorp
|
|
Whether it's a good idea to automatically remove unknown items from the
inventory in the first place is something to be considered.
Reviewed-by: Freeyorp
|
|
Replaced by cmake.
|
|
Also fixed a memleak when loading an invalid monster attack.
Resolves: Mana-Mantis #215.
Reviewed-by: Thorbjorn.
|