Repository navigation
chore: release 9.0.0+tibiash.10 - #26
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Releases
9.0.0+tibiash.10. This pull request merges itself once its checks pass. Then the merge commit is taggedv9.0.0+tibiash.10, and the tag publishes the release.paralysablefromparaimmunethe right way round, and store an unknown creature value asNULLinstead of a real-looking
0orfalse.paraimmune = yes(immune) isfalseandnoistrue; before, animmune creature like Dragon read
true, a regression from upstream1a6dabf.hitpoints,experience,armor,mitigation,speed,runs_atand everymodifier_*keep a number, including 0, and areNULLfor?, an emptyvalue,
--or a colour word likedeep redinrunsat.illusionable,pushable,push_objects,sees_invisibleandparalysableareNULLfor anything butyesorno, such as?orno?.summon_costandconvince_costkeep 0 for--orno, which the wiki shows as "cannot", and areNULLfor?, an empty value oryes. Wiki comments are ignored in all of these fields, soyes <!-- note -->reads asyes, and anexpfoundonly inside a comment, as on Bonelord Totem, is
NULLinstead of the comment's number. An absent value was alreadyNULL, andis_bossis unchanged.item.slot,item.is_usable,spell.spell_id,creature.attack_typeandcreature.uses_spells, read fromthe
slot,usable,spellid,attacktypeandusespellsfields.slotandattack_typeare lower-cased, likeneckormelee, andNULLfor an empty value or one with a?.is_usableanduses_spellsaretrueforyes,falsefornoandNULLfor anything else, such as?.spell_idis the first number in the value andNULLwhen there is none, as for?. Wiki comments are ignored in all of these fields, and an absent value isNULL.item_client_idtable, with every client ID in an item'sitemidin listed order, from position 0. ShallowWater's
629,630,631,632,633,634gives six rows. Wiki comments are ignored, and anitemidwith no whole number,like
?, gives no rows.item.client_idis unchanged and still holds the first ID.It keeps its earlier reading, which counts comments, so when
itemidstarts with a comment holding a number, like<!-- 7 -->644,client_idis 7 while the rows start at 644.creature_drop.rarityandcreature.loot_statistics_kills.rarityis the rarity word of a{{Loot Item}},with or without an amount, as in
{{Loot Item|1-3|Gold Coin|common}}and{{Loot Item|Gold Coin|common}}, in lowercase:
always,common,uncommon,semi-rare,rareorvery rare. Any other word,?, an empty or absentrarity is
NULL, and wiki comments are ignored. When a Loot Statistics page replaces a drop's rows, the new row keepsthe rarity the old rows share,
NULLincluded, and isNULLwhen they disagree, like Court Warlock's crystal coinlisted both
commonandvery rare, or when the article does not list the item.loot_statistics_killsholds thekills of the page the chances come from, and is
NULLfor a creature without a page or whose page has no positivenumber of kills. Loot
minandmax, and the number of drop rows, are unchanged.creature_ability.conditionandcreature_ability.condition_value, and keep the{{Haste}},{{Debuff}}and{{Outfit}}abilities, which were dropped.conditionis theconditionof a{{Melee}}or{{Ability}}in lowercase, like
poisonedorslowed, andNULLfor?, an empty or absent value. A{{Melee}}withpoison=ispoisoned, with the number incondition_value, which isNULLforpoison=?and on every other row. Wikicomments are ignored. A Haste row has the element
haste, its spell as the name, likeStrong Haste, orHaste,and an empty effect. A Debuff row has the element
debuff, its name orDebuff, and the effectvalue=<value>; duration=<duration>; flags=<flags>, likevalue=50%; duration=10; flags=distance,melee: the valuesare copied as written, the flags set to
yesare listed in the orderdistance,melee,magic,shielding, andan empty part is left out. Flags given without a name, as in
{{Debuff|Debuff|yes}}, are not read. An Outfit givesone row per outfit, from parameter 2 or
thing, then parameters 4 and up orthing2and up, with the elementoutfitand the effectyeswhen it changes the victim andnowhen it changes the creature. Template names mustmatch exactly, as before, and the existing rows keep their values.
creature.location, and additem.locationand thecreature_location_coordinateanditem_location_coordinatetables. Each{{Mapper Coords}}template in a location is replaced by its label, itstextcleaned once, like the rest of the location, so Black Sheep'sFemor Hills (127.88), cultist cave in Liberty Bay (126.192), DrefiareadsFemor Hills (here), cultist cave in Liberty Bay (here), Drefia, and Behemoth'sdouble spawn text=herereadsdouble spawn here. A template without a label, or whose label is empty once cleaned, isremoved, with the spaces before it when a space, punctuation or the end follows, and with parentheses it leaves empty.
The rest of the text is cleaned as before, so a location without the template is unchanged, and NPC, house and key
locations are unchanged, except that a creature or item location the cleaning cannot read, such as one holding a
template inside another's later parameter, is read as plain text with its templates dropped instead of being
NULL.Each template whose
x,yandzread as numbers on the game's map,xandyfrom 0 to 65535 andzfrom 0 to15, gives a row with the position, the label the text shows or
NULL, and its place in the list from 0.xandyare read from the wiki's
major.minorform, so127.88is 32600, and a malformed set like Warlord Ruzad's128.202,123.233,5-2, or one off the map, gives no row, while its label still replaces it in the text.item.locationis the item'slocation, cleaned the same way.item.trade_value_note, the item'svalueas the wiki writes it, with links and templates cleaned and wikicomments dropped, like
Negotiable,Negotiable gpor Amazon Armor's55,000,000 - 70,000,000. A template gives itsfirst parameter, so
{{Hover|Negotiable|ask}}isNegotiable, and a value that cleaning cannot read, such as oneholding a template without parameters or a template inside another's later parameter, is read as plain text with its
templates dropped, so
1,000 {{GP}}is1,000. It is never read as a number, so a range or0is kept as written,and it is
NULLwhen the value is absent,?,--or empty once cleaned.