"getobjectvalue,index[,type]" works exactly like Object::GetUInt32Value(). default type treatment is uint32, set type to "f" to return floatvalue, or "i64", to return uint64value.
* added script func "listchannel" (get all guids on players in a channel, query their names and store them in list macro @ChannelList.
* fixed /me-like emotes (server will no longer treat them as crash attempt :D )
* stuffextract: added output of database names into SCP files.
* added script handler "_onchatmessage" that gets triggered when ANY chat message is recieved.
* TODO: finish & debug "processchatai" and "registerchataiscript" scripts.
* 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.
* 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.
* forgot to mention on last commit: a) support almost infinite DefScript args now: @0 ... @4294967295; b) speeded up DefScript execution speed by ~10%
* TODO: load .def files the same way as the conf files now.
* 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!
-> 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
-> 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.
* 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
* fixed a bug that allowed to execute scripts via ingame commands without any permission
* added DefScript functions substr, getplayerperm, getscriptperm
* note that this version might still be buggy! please test and give feedback on forum!
* added a temp workaround to prevent the execution of dangerous scripts over return values as ingame commands.
( -out ?{say .shutdown} )
* implemented SCP database functionality (.scp files). (sounds familiar? :P )
* new DefScript command: "loadscp,name filename"
* added .def file: append.def. (wrapper to concat strings)
** -> note that the scp db has no real use right now, just some program internal stuff which will come tomorrow. soon i'll have a go at DefScript return values, useable e.g. to get data from the dbs.
* new DefScript command: "queryitem #id"
* added cache for known item prototypes
* fixed a little typo in script: reply.def
* error logs go to stderr now
* misc stuff
-> moved conf loading from core to scripts.
*New DefScript call: _leaveworld.def
*Fixed crash when calling _leaveworld on ~WorldSession()
* some updates to internal variable name handling
* added new macro: @n : newline (\n)
* cleanups
* added a bunch of new scripts + examples