summaryrefslogtreecommitdiff
path: root/CHANGELOG
blob: c51bc5eeebe8477db7771c8a7a2b37dbc7518bd2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
v15.7.05
  - fix for "do not count hidden players with getmapusers builtin"
v15.6.30
  - a few modifications to make tmwa compatible with gcc 5
  - send pvp channel and rank to client
  - don't segfault when inserting remote maps into DB
  - do not count hidden players with getmapusers builtin
  - do not reset the default (1) pvp channel on death
  - fix a bug that allowed to attack with magic players that are not in the same pvp channel
  - add builtin "title"
  - add builtin "mapmask"
  - add mapflag "mask" (and remove legacy "noicewall" mapflag)
  - add builtin "npcaction"
  - add builtin "music"
v15.5.23
  - really send mob hp properly
  - add more debug with abort vs. runflag
v15.5.19
  - check client version in login server
  - make npcs sit-able
  - send mob attack range
  - send mob hp properly
  - send npc sex
  - add builtin setnpcdirection
  - make packet SMSG_BEING_VISIBLE follow manaplus spec
  - make packet SMSG_BEING_MOVE follow manaplus spec
v15.5.18
  - reject old incompatible clients
  - check client version before sending quest data
  - send mob hp to client
  - send mob walk data to client if client version >= 3
  - remove "Save" and "Random" special map names for the warp builtin
  - remove unused pc_randomwarp
  - remove builtin getitemname in favor of builtin getitemlink
  - remove builtin getequipname in favor of getitemlink combined with getequipid
  - remove item labels
  - remove OnInterIfInit event handler
  - remove OnCharIfInit event handler
  - remove long deprecated tmwa-monitor
  - allow to specify npcs in timer-related builtins
  - make the script engine more strict and die on errors
  - completely deprecate invalid npc id -1 in favor of id 32767
  - remove the motd in favor of one provided by server-data
  - make the message about the source code location be sent to General chat tab instead of Debug
  - remove leftovers from deprecation of atcommand gm
  - reset the status both on death and on respawn
v15.5.04
  - remove check for pk_mode for mapflag NOPVP
  - remove atcommand gm
  - add atcommand npc
  - remove builtin readparam
  - remove builtin statusup2
  - remove builtin changesex
  - remove builtin gmcommand
  - add builtin wgm
  - add builtin gmlog
  - do not force disconnection after sex change
  - add new parameter to builtin emotion
  - remove braces and jname from getitemlink
  - add quest log
  - add sanity check to freeloop
  - add OnPCLoginEvent handler
  - some typo fixes and rewording
v15.4.20
  - make spam warnings appear in General chat tab
  - add builtin getnpcx
  - add builtin getnpcy
  - add builtin pvp
  - add builtin getpvpflag
  - add builtin strnpcinfo
  - remove builtin cmdothernpc
  - remove builtin killmonsterall
  - remove builtin percentheal
  - remove builtin itemheal
  - modify builtin heal to include itemheal
  - remove atcommand killer
  - remove atcommand killable
  - remove atcommand charkiller
  - add atcommand pvp
  - add atcommand charpvp
  - add atcommand exprate
  - remove warp debug (npc 722)
  - add support for emote IDs over 100
v15.2.28
  - Added Freeloop
v15.1.23:
  - update changelog for this and last release
  - segregate per-server global variables
  - use namespaces for every server
  - generate all config parsers
  - support fine-tuned per-version sections in config files
  - track spans for config parsing
  - remove deprecated config settings
  - fuck adl
  - error out (after global ctors) if someone is dumb enough to run as root
  - really fix shop prices
  - add gcc 4.9 on travis
  - use an uglier bug more reliable macro for MATCH
  - fill the house with dancing elves, it is the xmas season
  - workaround the clang bug preventing shared libraries
  - fix clang 3.5 builds (previously only 3.4 worked)
  - fix infinite loop in previous release
  - flatten protocol generator and add pre/post/desc digraph and wiki
  - new script builtins: npcareawarp, iscollision
  - use manaplus url format
  - fix nightlies
v14.11.11:
  - avoid this release at all costs
  - fix an obscure bug breaking asan
  - add new way of checking for mapless events
  - fix off-by-one overflow with too many script arguments
  - more script debugging in python instead of in the executable
  - attempt to fix shops
  - eliminate buggy microoptimization with sc_count
  - fix crash with divorce
  - parse npcs and items into an ast first
  - simplify nightly cross-builds now that there's a defaults package
  - semiformalize the concept of "ranked" directories of headers
  - convert readme to markdown
  - fix bugs caused by using more Option<T>
  - bump clang version on travis
  - various build system improvements to build more, smaller, files
  - pretty-print pointers by symbol/segment
  - move more stuff to Option<T>
  - split parsing functions into their own files
  - get rid of crazy 2-based arrays for script arguments
  - finish removing offhanded weapons
v14.10.5:
  - fix the stupid refactoring bug with mob slave summons
  - officially drop support for clang, all versions are too buggy
  - implement Option<T> and Borrowed<T> with tests, but don't use them yet
  - rename enum Option to Opt0 to move it out of the way
  - add support for static libraries (clang is being retarded again)
  - critical fix for the bug in parties (thanks Rawng)
  - add support for cross-builds to the buildbot script
  - fix a refactoring bug in magic
  - fix an exposed bug in the magic 'dir_towards' function
  - fix an exposed bug in char-server whispering
v14.8.29:
  - fix testsuite
  - add missing changelog
v14.8.28:
  - stop meko from crashing the test server
  - support updating race without relogin (manaplus is still bitchy)
  - build infrastructure to debug debug scripts
  - bust up all the unions
  - burn the strings with fire
  - use more namespaces
  - safety-pin all enum -> integer conversions
  - check for statement/function mismatches in scripts
  - quieten the makefile when doing nothing
  - use/check more of the configured build dirs
  - support shared libraries in build system and rpath
  - bump attoconf
  - implement 'make bindist' and write a blessed nightly script
  - revert breakage, go back to signed numbers
  - fix compile failure with --disable-warnings (the default, but no CI)
v14.7.1:
  - avoid this and the previous release at all costs
  - keep one less rotating backup to avoid going insane
  - attempt to fix signedness breakage from the network change
v14.6.30:
  - packet names (thanks evets)
  - silence secondary output from tests
  - port the variant
  - fix anti-purge thing by giving every account a date
  - prevent null session crash during shutdown
  - specialize inventory/storage indices to avoid out-of-bounds
  - don't crash when giving invalid ID to @item
  - play with obscure corners of the C++ standard that no one can interpret
  - replace hand-coded network protocols with generate ones
  - lots source layout and formatting cleanup
  - faster dependency calculation
  - strict ids (yay less bugs, boo account/block entanglement)
  - beginning of integers
  - support libc++ (experimental)
  - drop gcc 4.6 support
  - completely remove flex/bison dependency
  - fix duplication in npctalk
v14.4.20:
  - fix potential file corruption with partial writes
v14.4.19:
  - emergency backport of security fix, since v14.7.1 is too buggy
v14.4.18:
  - fix some fatal bugs related to logout in the previous release
  - fix out-of-bounds in trades exposed in the previous commit
  - fix use-after-free when player is kicked with a delay
v14.4.9:
  - fix tarball timestamps
  - added all missing copyright notices
  - use AGPL for my new files; add @source command and makefile support
  - fix a multiline span assertion missed by the testsuite
  - @tee no longer duplicates the speaker's name
  - fix @npcmove between blocks
  - fix out-of-bounds crash when unarmed (exposed by shrinking character)
  - bounds-checks for most arrays
  - lots of deprecation warnings in the script parser (sorry)
  - finally merge wushin's "local savepoint override" patch
  - new magic frontend with sexpr; temporary converter
  - if doing nothing, stop doing anything
  - script variables of all types can now be used by magic
  - flexible mapflags
  - split out the character keys for better paging (network ABI change)
  - lower priority for background processes
  - add a more efficient string for temporaries
  - make build prettier
  - strictify sessions and fds
  - recover nonexistent party member slots
  - remove the middle makefile
v14.1.27:
  - new tracking IO for better errors
  - Unified config parsing! This *requires* new config files in server-data
  - reimplement shared string better
  - fix IO-related abort during shutdown
  - fix the numbering of certain map logs
  - add mapexit script command, since @mapexit doesn't work without a player
  - start enforcing code format automatically
  - add debug printers
v13.11.24:
  - don't consume spell components when under @hide
  - tmwa-admin no longer logs passwords in cleartext
  - tmwa-admin help slightly fixed (still terrible)
  - make tmwa-finger work for tmwa-map also
  - allow setting class
  - I/O rewrite
  - allow checking whether arrows are equipped
  - more printers
v13.10.31:
  - make debug printers more compatible with older systems
  - fix account creation with ladmin
  - fix building out of tree
v13.10.29:
  - show MOTD in a way that works
  - ignore hidden GMs in more scripts
  - make @hide persist without crashing
  - rewrite @help and other dispatch
  - fix totally broken status_option, which caused GM invisibility to fail
  - add @charkiller
  - make @hide to persist
  - flush the GM log all the time
  - add debug printers
  - use config for internal server userid/passwd instead of accounts.txt
    This requires updated config files in the data repo.
    IF YOU DO NOT UPDATE THIS, YOUR SERVER WILL NOT WORK.
  - fix reversed error condition in ladmin changesex
  - actually kick the player when their sex is changed by a script
  - implement 'make dist'
  - fix crash due to logging after log is closed
v13.10.2:
  - remove some asserts that shouldn't fail, but do anyway
v13.9.31:
  - don't show different GM level types, it breaks guildbot
v13.9.30:
  - streamline release process
  - fix drop order assignment
  - show different GM level types in online list
  - remove logging of failed whispers (successful ones were never logged)
  - fix some warnings
v13.9.29:
  - fix monster elements
v13.9.28:
  - also make login server startup much faster
  - fix turning right
  - fix pathfinding a bit
  - fix a small part of ladmin help
v13.9.27:
  - fix a bug with trades
  - make char server startup much faster
v13.9.21:
  - With the new Makefile, the binary names have changed. Instead of
    login-server, ladmin, etc., they are now tmwa-login, tmwa-admin, etc.
    (properly namespaced). Please remove any instances of the following
    files from your system: ladmin, login-server, char-server, map-server,
    eathena-monitor, deps.make
  - Fix statup2 not actually doing anything.
  - Add 'return' to the list of script commands that don't work properly
    inside an 'if' statement.
v13.9.12:
  - Also allow "true" and "false" as boolean values in config files.
  - The format of lan_support.conf has changed slightly.
    If you have made any adjustments, you MUST update it.
  - Increase maximum size of a script array from 128 to 256.
  - Fix scissors bug.
v13.8.28:
  - First release - finally cleaned up enough to feel good about.
  - For a partial list of changes since branch 'unsupported', see
    http://forums.themanaworld.org/viewtopic.php?f=2&t=17670