87 Commits

Author SHA1 Message Date
False.Genesis
cb26f947c5 general fixes before release [part 1].
* added script handler "_onchatmessage" that gets triggered when ANY chat message is recieved.
* TODO: finish & debug "processchatai" and "registerchataiscript" scripts.
2007-08-27 20:46:27 +00:00
False.Genesis
49338c6e6a * upgrade to 2.1.3 support. thx to bLuma for patch!!
* corrected and extended SharedDefines.h
* added handlers for SMSG_MOTD and SMSG_NOTIFICATION
* added values created by stuffextract to map.scp/race.scp before it supports 2.1.3 also.
2007-08-21 16:59:34 +00:00
False.Genesis
3100f68a30 last changes before 2.1.3:
* added script to support /me-like emotes (scriptname is "me")
* changed the permission system: now a script cant be used as game command f no permission is explicitly set
* implemented threadsafe CLI queue to solve crashes with short-intervalled events that ran on 2 threads
* fixed name return at "getitemprotovalue" script
* iplemented DrawObject class and a Mgr for those objects; they will ease object drawing once implemented. the Mgr works under control of the GUI thread and is threadsafe.
* implemented auto-loading of SCP files if a name-tag is present somewhere in the file ("#dbname=...") and no explicit db name was passed to "loadscp" script.
* changed internal ObjMgr storage to std::map (instead of list) for faster access
* fixed call of "_enterworld" script
* fixed handling of MyCharacter(), which could cause crashes after newly changes
* fixed GetFileList() func in tools.cpp (this fixes also related "lgetfiles" script func). now it will only parse files, not directories. might still need some fixing for linux.
2007-08-01 19:09:17 +00:00
False.Genesis
13760afb96 omg typos of tiredness 2007-06-29 23:12:22 +00:00
False.Genesis
16be9c5bcc * fixed GetZ() formulas.
* added ascii map dump. everytime pseuwow gets teleported to a new tile, "map_dump.txt" is created in pseuwow base dir.
2007-06-29 23:01:59 +00:00
False.Genesis
0165102288 * first try to calc Z coord for given x/y coords using map data. doesnt want to work (for now), more things have to be done.
* fixed crash on shutdown
2007-06-27 21:15:14 +00:00
False.Genesis
8ff8117e53 * implemented map loading. new conf option: 'useMaps'
* found a problem with file listing, _startup.def refuses to load some .def files. trying to fix that now...
2007-06-24 17:53:54 +00:00
False.Genesis
c2e83e27fb fixed channel join display message 2007-06-09 00:09:33 +00:00
False.Genesis
7ea59ad349 * fixed object update
* re-added language lookup in chat messages, for example "say,Gnomish pwnt". note they are CASE-sensitive and depend on which language name is set in /data/scp/language.scp!
2007-05-26 23:03:32 +00:00
False.Genesis
ec812a9b0f * fixed server crash when pseuwow was teleported around
* added now required 'winmm.lib' to shared.vcproj
* fixed memory leak with multiply created objects, where already existing objects didnt get deleted.
* forgot to autodelete RealmSession on socket fail
2007-05-17 18:47:37 +00:00
False.Genesis
cd99d323e9 * forgot to add correct display for chat emotes 2007-05-14 14:08:11 +00:00
False.Genesis
c2938bf222 * implemented emotes support & display
-> requires emote.scp extracted from client
* updated: show incoming opcodes _before_ parsing them
* updated DefScript: "emote" command will now also accept emote names (defined in emote.scp, field "name=...")
* updated: replace %1$s in emote texts extracted from (non-english) dbc files with %s, this simplifies emote text displaying.
* misc stuff
2007-05-14 13:49:37 +00:00
False.Genesis
fda133b660 * scripts without a special permission level assigned will now have 255 (highest permission) by default.
* forgot to remove some '\n'
2007-05-11 21:06:35 +00:00
False.Genesis
6c4ae79a87 * rewrote the realm/world login code.
-> reconnecting does work now, finally.
* updated conf setting: reconnect=0: dont reconnect; reconnect=X: reconnect after X msecs.
* misc code cleanups, crash fixes, and overall improved stability.
* splitted RealmSocket into a RealmSession and the original RealmSocket code. better read-/useabilty because now its handled as WorldSession and related.
2007-05-11 20:55:38 +00:00
False.Genesis
54a37a3ff9 * updated items & items cache to 2.0.12
* added extracting of map & area names to stuffextract
* code cleanups
2007-05-06 00:34:30 +00:00
False.Genesis
f7f9d8b6b4 * quick update for 2.0.x channels. join/chat/leave should now work again. started to add channel list request support. 2007-05-03 20:51:02 +00:00
False.Genesis
0b36ae85da * updated Object updates (SMSG_[COMPRESSeD_]UPDATE_OBJECT) to 2.0.12
* copied/updated some new unit data from MaNGOS
* new log level: legdev() - loglevel 3 and above.
* disabled item listing at entering/leaving world.
2007-04-30 23:34:38 +00:00
False.Genesis
9b373f6643 temp. fixed build. 2007-04-29 00:27:52 +00:00
False.Genesis
4282d4d1bf * implemented CONNECTING (only!) to 2.0.12 servers. (still gives errors)
* removed some hardcoded stuff (already present in included db)
* no opcode changes so far, this has to be done next!
2007-04-22 00:55:27 +00:00
False.Genesis
c92f1ea824 * huge changes:
* few script changes; added new func "ScriptExists".
* started an extractor tool; using StormLib (thx to Ladislaw Zezula!). for now convert some dbc files to scp. more stuff will follow.
* some changes to the realm/world connect code; still needs a rewrite.
* support conf parameters for GUI (check conf/gui.conf/gui.conf[.default] )
2007-04-10 22:42:42 +00:00
False.Genesis
8481b932e4 * debug messages update 2007-03-24 12:26:21 +00:00
False.Genesis
96610d36c6 * use databases instead of hardcoded values for language,map,zone,race,class names 2007-03-24 12:17:02 +00:00
False.Genesis
1ea085ae7b * added SMSG_SPELL_REMOVED opcode handler & related functions.
* spell ids are uint32, not uint16!
2007-03-24 00:21:42 +00:00
Mini
739ee2eae2 * Changed SetSpells() to AddSpell(spellid, spellslot)
* Added handling of SMSG_LEARNED_SPELL opcode
2007-03-23 22:34:19 +00:00
False.Genesis
0aaf7b45d6 * implemented usage of if/loop statements in #onload blocks
* check for if/loop/endif/endloop match in scripts
* check for brackets match (same amount of opening/closing brackets) at line load. skip corrupt lines
* some code cleanups
2007-03-23 21:00:20 +00:00
False.Genesis
7de82dd3a9 * fixed if..else..endif
* small .def update
* misc, minor changes to some functions
* added a few more DefScript functions (and, or, xor, GetObjectType, ObjectKnown)
2007-03-16 16:14:13 +00:00
False.Genesis
48d8a12a71 * added 2 new DefScript funcs: "GetEntry <guid>" & "GetitemProtoValue,<entry> <property>"
* misc updates to the scp storage
* got angry at the "loaded item prototype...[...]" messages, disabled them for release mode.
2007-03-14 19:29:44 +00:00
False.Genesis
d9a56b2a00 * more updates around DefScript stuff
* added some databases to make a start
* misc stuff
* added macro "@myrace"
2007-03-12 20:39:36 +00:00
False.Genesis
36aa23dadb * added some hexdumps on invalid realm packets.
* disabled name query of players on incoming move opcodes.
* more debug output in general, 1st part
2007-03-10 16:59:55 +00:00
False.Genesis
f80c315307 * workaround for ticket #4
* forgot to set permission for exit.def
2007-03-08 19:47:24 +00:00
False.Genesis
d044ef7138 * fixed WorldSocket. this fixed crypt errors hopefully.
* fixed problem with not sent packets that appeared [85]
* fixed infinite spam-loop when whispering to self with enabled autoreply
* fixed a bug (asking for playername although object is an item)
2007-03-07 17:09:39 +00:00
Necroalbert
10e6b70c4d fixed some crashes (with vc80) 2007-03-05 20:30:53 +00:00
False.Genesis
5412b1af3d * prevent selecting already selected target.
* some changes didnt upload in [81]
2007-03-05 15:22:16 +00:00
False.Genesis
242e9cafcd * corrected MyCharacter & related
* implemented basic spellcasting, more to come.
* new conf option: "disablespellcheck"
* reactivated DefScript command "castspell"
* added selfheal.def for GMs
* misc stuff
2007-03-05 15:05:22 +00:00
Mini
17e6692007 Started with MyCharacter class, added handling of spells opcode, more to come. 2007-03-04 12:33:16 +00:00
False.Genesis
0379c2ccf0 * assign WorldObject position on _MovementUpdate()
* disabled SSE-support, might fix problems on older machines (you can still enable it to increase speed)
2007-03-01 18:16:11 +00:00
False.Genesis
bc74818daa * added: auto-query player name on UPDATETYPE_CREATE_OBJECT
* added Object::_name to store object names faster & easier accessable. only players & items are added yet.
* added a small check for headers < 4 bytes (this can MAYBE fix some problems/errors with crypt)
2007-02-28 21:17:01 +00:00
False.Genesis
0d5e55fc67 * added 2 .def files: "sayguild" & "sayparty"
* removed debug output for object update
* auto-query unknown items worn by players
2007-02-27 21:03:58 +00:00
False.Genesis
6df34baf6a * implemented basic targeting. new DefScript command: "target <name>". works only on players for now, and name must be exact. 2007-02-27 19:04:17 +00:00
False.Genesis
1da69e7873 * fixed exception when deleting objects from the ObjMgr.
* fixed(?) some problems with including SDL, which should be excluded
* no more quit at crpt error, please test
2007-02-26 14:45:25 +00:00
False.Genesis
605fbd2df5 * added the remaining base classes Object, Corpse, DynamicObject & WorldObject; added updating those classes
* there is still a problem/exception with UPDATETYPE_OUT_OF_RANGE_OBJECTS, need to fix this later.
* 100% working objects system, now need to add functions to the objects. (made a start with Player/Unit::GetGender())
2007-02-25 22:04:15 +00:00
False.Genesis
d208bb3ec1 * 90% working UPDATE_OBJECT stuff, just bags are missing (need to make the class for bags).
* need to remove lots of debug output later, after bags are done.
* fixed ObjMgr. better store objects in only 1 list instead of storing them in 1 list per type.
* eased config: if you modify the conf files during runtime, just type "config" in the console and the changes will be applied.
2007-02-25 19:25:15 +00:00
False.Genesis
8b21f5386e forgot something 2007-02-19 02:23:21 +00:00
False.Genesis
386efe1378 * included SDL src as dep, but disabled build for now (now you do no longer need to install the precompiled SDL libs)
* some corrections to project files
* object classes improvements
* worked a bit on UPDATE_OBJECT stuff
* minor stuff i dont remember
* plz test VC2005 compatibility
2007-02-19 02:12:37 +00:00
False.Genesis
2d90dc3cfe * added some error handling
* chat msg formatting updates
* misc stuff
2007-02-14 16:01:32 +00:00
Mini
f4148cefc1 - Added support for non-compressed update opcodes
- Changed UPDATETYPE_VALUES so the update values gets changed in the object.
- Updated misc other stuff to the UPDATETYPE_VALUES code
2007-02-12 23:27:26 +00:00
False.Genesis
4c86eab673 * added opcode handler for initial spells
* corrected opcode output together with hidefreqopcodes conf option (plz test!)
2007-02-08 23:55:53 +00:00
False.Genesis
f9a8031e4f linking works again, very strange bug. 2007-02-08 21:31:56 +00:00
False.Genesis
cc8115baa3 mini plz fix linker error, i couldnt get it work. 2007-02-08 19:37:03 +00:00
False.Genesis
bd103935d0 * Added support for timed scripts (=event timers)
-> 2 new script commands: "addevent,$eventname,$interval $script" and "removeevent $eventname". note that you cannot register 2 events under the same name!
* Fixed a minor bug with ${@myname} when called in an #onload block
* Added an example script file autobroadcast.def
2007-02-08 17:41:52 +00:00