summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2010-11-02Trivial code convention fix, promised to thorbjorn ;)Yohann Ferreira1-2/+4
2010-11-02Some random code cleanups.Yohann Ferreira4-72/+112
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.
2010-11-01Prevented a crash in the monster loading code.Yohann Ferreira2-1/+12
The server was trying to insert attributes value not in monster scope. The monster code is to be rewritten anyway. Resolves: Mana-Mantis #212.
2010-10-30Have the PerformTransaction class automatically handle nestingThorbjørn Lindeijer7-84/+91
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.
2010-10-30Introduced a helper class for performing transactionsThorbjørn Lindeijer4-14/+54
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).
2010-10-30Use a transaction when handling a GAMSG_PLAYER_SYNC messageThorbjørn Lindeijer2-11/+21
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.
2010-10-26Documented the net_clientDataUrl optionThorbjørn Lindeijer1-1/+9
2010-10-26Some none-changesThorbjørn Lindeijer1-75/+33
Mainly merging a lot of short lines and removing pointless comments that are just repeating what the code says.
2010-10-26Added an empty npcs.xml file to the client dataThorbjørn Lindeijer1-0/+10
Needed for the Mana client to reach the character selection dialog.
2010-10-26Always check for zlib and add the necessary library flagsThorbjørn Lindeijer1-4/+3
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
2010-10-26Send a client data URL in addition to the update hostThorbjørn Lindeijer1-0/+7
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
2010-10-25Avoid assertion when removing unknown itemsThorbjørn Lindeijer1-3/+3
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
2010-10-25Fixed crash when the server tries to remove unknown itemsThorbjørn Lindeijer3-24/+29
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
2010-10-25Removed obsolete autoconf filesThorbjørn Lindeijer8-1090/+3
Replaced by cmake.
2010-10-24Updated link to roadmap in TODO fileThorbjørn Lindeijer1-1/+1
2010-10-23Added example equip.xmlPhilipp Sehmisch1-0/+12
2010-10-22Made the servers check for positive id in xml db loading.Yohann Ferreira7-45/+96
Also fixed a memleak when loading an invalid monster attack. Resolves: Mana-Mantis #215. Reviewed-by: Thorbjorn.
2010-10-20Fixed syntax error in Code::Blocks gameserver projectA.R. iceslice1-1/+1
12 files were missing because of this. Reviewed-by: Thorbjørn Lindeijer <thorbjorn@lindeijer.nl>
2010-10-20Fixed the append behaviour of logger::setLogFile().Yohann Ferreira3-3/+4
Also made both servers appends on the main log at start if they aren't empty. This permits not to lose the previous logs when quicky restarting the servers. Trivial fix.
2010-10-19Added missing files to the Code::Blocks accountserver projectA.R. iceslice1-0/+2
Reviewed-by: Thorbjørn Lindeijer <thorbjorn@lindeijer.nl>
2010-10-17Changed the mana_accounts.email field length to 64 characters.Yohann Ferreira3-1/+24
Reviewed-by: Crush. Resolves: Mana-mantis #251.
2010-10-17Dehardcode the tileWidth and height, except for the speed conversion.Yohann Ferreira11-52/+92
The speed conversion needs a standard tile length anyway and can be improved later once the movement code will start to handle beings size. Reviewed-by: Crush.
2010-10-17Fix hp regeneration units.Freeyorp1-2/+2
Reviewed-by: Bertram
2010-10-17Get rid of some unneeded direct calls to setBase for attributes.Freeyorp1-8/+5
setAttribute should be used for this, which also calls updateDerivedAttributes as needed. Reviewed-by: Bertram
2010-10-17Synchronise defaults between configuration file and source.Freeyorp4-13/+13
Reviewed-by: Bertram
2010-10-14Hopefully fix the logging rotation this time.Yohann Ferreira3-25/+89
Added an extension to the ResMan::exist() function in order to get file existence even not in search path. Reviewed-by: CodyMartin.
2010-09-29Added the new log options in the manaserv.xml.example file.Yohann Ferreira1-0/+14
Trivial fix.
2010-09-29Add log file rotation support based on ExceptionFault's work.Yohann Ferreira5-19/+212
This patch adds options to enable log rotations base on files size and or change of date. Note: Zip support will be added in a second commit. Reviewed-by: CodyMartin, Thorbjorn.
2010-09-27SQLite: Do a proper upgrade of the mana_characters tableThorbjørn Lindeijer1-11/+80
We can't leave the obsolete columns around since they are marked as NOT NULL, so insertion to the table fails if no values are provided for them. With SQLite, our only option is to create the table and copy the data over, which is what the update script now does. The script was modified so that it is fine to run it again on a database that was already updated to version 11 before.
2010-09-22Added options to disable the server log to standard output to the minimum.Yohann Ferreira2-19/+26
Also made some small cleanups. Resolves: Mana-Mantis #241 Reviewed-by: Jaxad0127.
2010-09-22Centralized the servers' exit values.Yohann Ferreira6-42/+79
Also made random code format clean-ups. Resolves: Mana-Mantis #217 Reviewed-by: Jaxad0127.
2010-09-18Converted CRLF to LF in attributes.xmlThorbjørn Lindeijer1-82/+82
Somebody needs to check his core.autocrlf setting.
2010-09-19Small fixes.Freeyorp4-16/+11
There is no longer any need to send attribute change information for character or correction point changes to the account server. This is now handled elsewhere in a dedicated function. The account server was already doing this but the game server hadn't been updated. This wasn't causing any major problems since this data was being sent at the end of the packet. Update documentation for the functions accordingly. Also adjust a misplaced opening curly brace in attribute calculation which could cause modifiers to be applied wrongly in certain cases. Reviewed-by: Kage
2010-09-16Changed maxSkillCap to game_maxSkillCap as I forgot in last commit.Yohann Ferreira1-42/+54
Also made some random code format cleaups. Trivial fix.
2010-09-16Upgraded the attributes.xml example to something actually usable.Yohann Ferreira1-38/+82
2010-09-15Fixed characters not being returned at character selection when using MySQL.Yohann Ferreira2-12/+12
The table mana_char_equips wasn't created due to an SQL error, this led the account server to not return the player's characters. Seen in the logs: [19:40:41] [ERR] (DALStorage::getCharacter #1) SQL query failure: Table 'bertram.mana_char_equips' doesn't exist [19:40:41] [ERR] Failed to get character 11 for account 1. Resolves: Manasource mantices: 189, 230. Reviewed-by: Thorbjorn.
2010-09-15Reordered the manaserv.xml.example file and made related code cleanups.Yohann Ferreira10-81/+188
Reviewed-by: Thorbjorn.
2010-09-12Added an example attributes.xmlThorbjørn Lindeijer1-0/+38
Copied from bertram-experimental-mana-data and updated to new element names.
2010-09-12Added script to update SQLite database to version 11Thorbjørn Lindeijer1-0/+39
Will not drop the attribute columns since this is not supported by SQLite. I'm just leaving them around for now and see if it causes any problems.
2010-09-12Fixed removal of hardcoded attributes in the MySQL update scriptThorbjørn Lindeijer1-7/+7
It was trying to remove them from the wrong table.
2010-09-09Documented all the currently available options in manaserv.xml.example.Yohann Ferreira1-7/+33
Reviewed-by: CodyMartin.
2010-09-08Centralized stringToBool conversion.Yohann Ferreira14-123/+163
Also moved the trim() function into the utils namespace where it belongs more, and made some random code cleanups. Reviewed-by: Thorbjorn.
2010-09-07Added config options to set stats and log files and paths.Yohann Ferreira3-32/+52
Also turned the absence of an inter-server password into a fatal error while documenting it in the manaserv.xml example file. Reviewed-by: Jaxad0127.
2010-09-06Added <points> tag handling in attributes.xml.Yohann Ferreira3-53/+95
Reviewed-by: Freeyorp, Thorbjorn.
2010-08-31Added a --config manaserv.xml file path options to both servers.Yohann Ferreira2-48/+140
Now, it's possible to set a different config filename and path on the command line. Reviewed-by: Jaxad, Kage.
2010-08-30Change primary and secondary tags in attributes.xml from stats and stat to ↵Freeyorp2-4/+4
attributes and attribute respectively.
2010-08-30Added @mute chat command.Philipp Sehmisch5-4/+70
The @mute command stops another character from talking in the public chat for a specified amount of seconds. It doesn't survive a reconnect of the client, but I don't think that this is necessary because a mute by a GM is usually intended as a slap on the wrist with more severe consequences to follow (like @ban).
2010-08-29Merge branch 'testing'Freeyorp59-1926/+3487
Conflicts: src/account-server/storage.cpp src/game-server/being.cpp src/game-server/being.hpp src/game-server/character.cpp src/game-server/character.hpp src/game-server/gamehandler.cpp src/game-server/inventory.cpp src/scripting/lua.cpp src/sql/mysql/createTables.sql src/sql/sqlite/createTables.sql
2010-08-22Some coding style tweaksThorbjørn Lindeijer3-20/+16
2010-08-22Pass a script name to Lua for proper reporting of error locationsThorbjørn Lindeijer5-10/+14
Now the Lua file name shows up in the error message and stack traceback, or the map file and object name in case of a script embedded in a map file.