Histórico de Curtidas
-
doda4ever deu reputação a Mateus Robeerto em TFS 1.5 {8.6} Nekiro Downgrade com montarias e modal window apenas para OTClient.Para aqueles que estão interessados em adotar a base do Nekiro, gostaria de anunciar que as montarias e a modal widow agora estão disponíveis. Se você deseja implementar sistemas como o de crafting com modal e outros recursos, sinta-se à vontade para fazer o download e testar.
É importante observar que o Nekiro não incluiu mapas nesta versão. Portanto, será necessário migrar seus próprios mapas para o TFS 1.5 8.6. Alternativamente, você pode considerar utilizar a base do Luciano, conhecida como STYLLER OT. Após realizar testes, posso confirmar que essa é uma opção bastante interessante. Esta versão já está completa, permitindo que você utilize seus próprios mapas sem dificuldades significativas.
Além disso, estou disponibilizando os sprites no formato 13x para a versão 8.6, juntamente com os arquivos items.otb e XML. Quanto à correção de eventuais erros, isso fica a seu critério, mas gostaria de ressaltar que não é uma tarefa difícil de realizar.
É com satisfação que compartilho que a source está agora disponível para acesso público. Caso você deseje, pode realizar atualizações através dos commits. Estou preparando uma lista abrangente de atualizações necessárias, pois há muitas modificações a serem feitas.
Para acessar a source, por favor, clique no link abaixo:
https://www.mediafire.com/file/0680a4b624163pd/TFS-1.5-Downgrades-8.60.rar/file
Dentro da SRC que implementei, você encontrará os seguintes recursos:
Sistema de Montaria: Agora você pode adicionar essa funcionalidade ao seu servidor.
Modal Window: Esta é uma janela modal, proporcionando uma experiência mais interativa para os jogadores.
Custom Attributes(Boost e Relfect:: https://github.com/otland/forgottenserver/pull/2807/commits/18f5afa52a36a02ea56dae97b29e683233d15c25.
Além disso, gostaria de compartilhar três repositórios no GitHub que podem ser valiosos para você. Três deles são mantidos pelos usuários @Movie e @ralke23 e a Sarah (MillhioreBT). Esses repositórios contêm recursos e scripts úteis que podem aprimorar a experiência do seu servidor. Sinta-se à vontade para explorar e utilizar esses recursos conforme necessário.
https://github.com/moviebr/TFS-1.5-Downgrades
https://github.com/ralke23/Greed-TFS-1.5-Downgrades
https://github.com/MillhioreBT/forgottenserver-downgrade
Para os interessados nos sprites 13x para a versão 8.6, estou disponibilizando o link para download abaixo:
https://mega.nz/folder/5FQEnT4R#pAbmAAhpBhmcP1jaVkXm8Q
Recomendo também o uso do ObjectBuilder_0_5_5-dev para facilitar o processo:
https://github.com/punkice3407/ObjectBuilder/releases/tag/v0.5.5
Para aqueles que enfrentam dificuldades na compilação do executável, estou disponibilizando um arquivo para download que pode ajudar:
https://www.mediafire.com/file/cxirgq7n1cm2p3i/dlls+e+exe.rar/file
Quanto à ativação do sistema de montarias via OTClient, basta acessar o arquivo game_features/features.lua e localizar a linha: 'if(version >= 860) then!' e adicionar abaixo 'g_game.enableFeature(GamePlayerMounts)'.
É necessário baixar ambos os arquivos, mounts.xml e outfits.xml, para que o OtClient funcione corretamente. Sem esses arquivos, o cliente pode apresentar bugs ou até mesmo crashar sozinho. É obrigatório o uso desses arquivos. Basta fazer o download e colocá-los na base do Luciano. Basta ir até a pasta data/xml e inserir os arquivos lá. Se você estiver usando seu próprio mapa, os arquivos são igualmente necessários, independentemente de suas preferências.
outfits.xml
mounts.xml
ATENÇÃO: Sobre a base do Luciano ou do Nekiro downgrade que você baixou (schemas.sql), ela está totalmente limpa, sem implementações adicionais. Cabe a você implementar por conta própria. Por exemplo, se você for usar o Znote, ele solicitará o esquema e as colunas necessárias. Isso não são erros, são apenas avisos. Você deve procurar pelas colunas necessárias e inseri-las para que funcione corretamente. Isso não é difícil de fazer.
https://github.com/slawkens/myaac
https://github.com/gesior/Gesior2012
https://github.com/Znote/ZnoteAAC/tree/v2
Antes de prosseguir com o download, sugiro que realize uma verificação de vírus nos arquivos. Seguem os links para o scan:
Scan da SRC
https://www.virustotal.com/gui/file/1364b14cab10a34ca7102d3581e427396f8224cc5156d6bc3859b4ebcb155de6?nocache=1
Scan das DLLs e Executável
https://www.virustotal.com/gui/file/603c853dbd5b40ff21b0b0004c129e5039c9954277da22722b2980fcbfcbe0ce?nocache=1
IMPORTANTE: Por favor, note que a funcionalidade de montaria e janela modal não está disponível para versão old do client (CipSoft). Infelizmente, não estou oferecendo suporte para essas versões no momento. No entanto, é possível adquirir uma DLL especial que pode ser injetada no client old (CipSoft) para habilitar essas funcionalidades. Caso esteja interessado, conheço um vendedor confiável que oferece essa DLL. Para mais informações, por favor, entre em contato através do Discord: Sharingan.
-
doda4ever recebeu reputação de jcfd.joao em Procuro Mapper EmpenhadoEstou com um servidor 8.60 em estágio avançando e preciso da parceria de alguém que gosta de editar mapa.
Requisitos do Mapper:
Gostar de editar, criar áreas novas ou editar as baseadas no global.
Ter disponibilidade de pelo menos 2, 3 horas por dia pra se dedicado ao desenvolvimento.
Saber administrar um servidor, conversar com os jogadores, ouvir feedback, etc.
-
doda4ever recebeu reputação de allanzinh em (Resolvido)Aprender a linguagem.Sr, elas já vem embutidas no tfsourcee
//get* getCreatureHealth(cid) getCreatureMaxHealth(cid) getCreatureMana(cid) getCreatureMaxMana(cid) getCreatureMaster(cid) getCreatureSummons(cid) getCreatureOutfit(cid) getCreaturePosition(cid) getCreatureName(cid) getCreatureSpeed(cid) getCreatureBaseSpeed(cid) getCreatureTarget(cid) getCreatureByName(name) getCreatureSkullType(cid) getCreatureCondition(cid, condition[, subId]) getCreatureNoMove(cid) getMonsterInfo(name) getMonsterHealingSpells(name) getMonsterAttackSpells(name) getMonsterLootList(name) getMonsterTargetList(cid) getMonsterFriendList(cid) getPlayerByNameWildcard(name~) getPlayerLossSkill(cid) getPlayerLossPercent(cid, lossType) getPlayerGUIDByName(name[, multiworld]) getPlayerNameByGUID(guid[, multiworld]) getPlayerFood(cid) getPlayerLevel(cid) getPlayerExperience(cid) getPlayerMagLevel(cid[, ignoreBuffs]) getPlayerSpentMana(cid) getPlayerAccess(cid) getPlayerSkillLevel(cid, skillid) getPlayerSkillTries(cid, skillid) getPlayerTown(cid) getPlayerVocation(cid) getPlayerRequiredMana(cid, magicLevel) getPlayerRequiredSkillTries(cid, skillId, skillLevel) getPlayerItemCount(cid, itemid) getPlayerSoul(cid) getPlayerAccountId(cid) getPlayerAccount(cid) getPlayerIp(cid) getPlayerFreeCap(cid) getPlayerLight(cid) getPlayerSlotItem(cid, slot) getPlayerWeapon(cid[, ignoreAmmo]) getPlayerItemById(cid, deepSearch, itemId[, subType]) getPlayerDepotItems(cid, depotid) getPlayerGuildId(cid) getPlayerGuildName(cid) getPlayerGuildRank(cid) getPlayerGuildNick(cid) getPlayerGuildLevel(cid) getPlayerSex(cid) getPlayerLookDir(cid) getPlayerStorageValue(uid, valueid) getPlayerGUID(cid) getPlayerFlagValue(cid, flag) getPlayerCustomFlagValue(cid, flag) getPlayerPromotionLevel(cid) getPlayerGroupId(cid) getPlayerLearnedInstantSpell(cid, name) getPlayerInstantSpellCount(cid) getPlayerInstantSpellInfo(cid, index) getPlayerSex(cid) getPlayerBlessing(cid, blessing) getPlayerStamina(cid) getPlayerExtraExpRate(cid) getPlayerPartner(cid) getPlayerParty(cid) getPlayerPremiumDays(cid) getPlayerBalance(cid) getPlayerRedSkullTicks(cid) getPlayerRates(cid) getInstantSpellInfo(cid, name) getPlayersByAccountId(accountNumber) getPlayersByIp(ip[, mask = 0xFFFFFFFF]) getPlayersOnline() getPartyMembers(lid) getAccountIdByName(name) getAccountByName(name) getAccountIdByAccount(accName) getAccountByAccountId(accId) getIpByName(name) getItemRWInfo(uid) getItemDescriptionsById(itemid) getItemWeightById(itemid, count[, precise]) getItemDescriptions(uid) getItemWeight(uid[, precise]) getItemAttack(uid) getItemExtraAttack(uid) getItemDefense(uid) getItemExtraDefense(uid) getItemArmor(uid) getItemAttackSpeed(uid) getItemHitChance(uid) getItemShootRange(uid) getItemIdByName(name[, reportError]) getItemLevelDoor(itemid) getItemWeaponType(uid) getFluidSourceType(type) getContainerSize(uid) getContainerCap(uid) getContainerCapById(itemid) getContainerItem(uid, slot) getDepotId(uid) getTileItemById(pos, itemId[, subType]) getTileItemByType(pos, type) getTileThingByPos(pos) getTileInfo(pos) getTopCreature(pos) getClosestFreeTile(cid, targetpos[, extended[, ignoreHouse]]) getThingFromPos(pos) getThing(uid) getThingPos(uid) getHouseOwner(houseid) getHouseName(houseid) getHouseEntry(houseid) getHouseRent(houseid) getHousePrice(houseid) getHouseTown(houseid) getHouseAccessList(houseid, listid) getHouseByPlayerGUID(playerGUID) getHouseFromPos(pos) getHouseTilesSize(houseid) getTownId(townName) getTownName(townId) getTownTemplePosition(townId) getTownHouses(townId) getWorldType() getWorldTime() getWorldLight() getWorldCreatures(type) //0 players, 1 monsters, 2 npcs, 3 all getWorldUpTime() getHighscoreString(skillId) getVocationInfo(id) getGuildId(guildName) getGuildMotd(guildId) getSpectators(centerPos, rangex, rangey, multifloor) getSearchString(fromPosition, toPosition[, fromIsCreature[, toIsCreature]]) getWaypointPosition(name) getGameState() getNotationsCount(accId) getBanData(value) getBanList(type[, value]) getBanReason(id) getBanAction(id[, ipBanishment]) getGlobalStorageValue(valueid) getExperienceStage(level) getConfigFile() getConfigValue(key) getLogsDir() getDataDir() //set* setCreatureMaxHealth(cid, health) setCreatureMaxMana(cid, mana) setPlayerStorageValue(uid, valueid, newvalue) setPlayerGroupId(cid, newGroupId) setPlayerPromotionLevel(cid, level) setPlayerStamina(cid, minutes) setPlayerExtraExpRate(cid, value) setPlayerPartner(cid, guid) setHouseOwner(houseid, ownerGUID) setHouseAccessList(houseid, listid, listtext) setItemName(uid) setItemPluralName(uid) setItemArticle(uid) setItemAttack(uid, attack) setItemExtraAttack(uid, extraattack) setItemDefense(uid, defense) setItemArmor(uid, armor) setItemExtraDefense(uid, extradefense) setItemAttackSpeed(uid, attackspeed) setItemHitChance(uid, hitChance) setItemShootRange(uid, shootRange) setCombatArea(combat, area) setCombatCondition(combat, condition) setCombatParam(combat, key, value) setConditionParam(condition, key, value) setCombatCallBack(combat, key, function_name) setCombatFormula(combat, type, mina, minb, maxa, maxb) setConditionFormula(combat, mina, minb, maxa, maxb) setGlobalStorageValue(valueid, newvalue) setWorldType(type) //do* doCreatureAddHealth(cid, health[, force]) doCreatureAddMana(cid, mana) doCreatureSetDropLoot(cid, doDrop) doCreatureSetSkullType(cid, skull) doCreatureSetLookDir(cid, dir) doCreatureChangeOutfit(cid, outfit) doCreatureSay(cid, text, type[, pos]) doCreatureSetNoMove(cid, cannotMove) doSetCreatureLight(cid, lightLevel, lightColor, time) doSetCreatureOutfit(cid, outfit, time) doRemoveCreature(cid) doMoveCreature(cid, direction) doConvinceCreature(cid, target) doChallengeCreature(cid, target) doChangeSpeed(cid, delta) doSummonMonster(name, pos) doCreateMonster(name, pos) doMonsterChangeTarget(cid) doMonsterSetTarget(cid, target) doCreateNpc(name, pos) doSetMonsterOutfit(cid, name, time) doPlayerBroadcastMessage(cid, message[, type]) doPlayerSetSex(cid, newSex) doPlayerSetTown(cid, townid) doPlayerSetVocation(cid,voc) doPlayerRemoveItem(cid, itemid, count[, subtype]) doPlayerAddExp(cid, exp) doPlayerSetGuildId(cid, id) doPlayerSetGuildRank(cid, rank) doPlayerSetGuildNick(cid, nick) doPlayerAddOutfit(cid,looktype, addons) doPlayerRemoveOutfit(cid,looktype, addons) doPlayerSetRedSkullTicks(cid, amount) doPlayerSetLossPercent(cid, lossType, newPercent) doPlayerSetLossSkill(cid, doLose) doPlayerAddSkillTry(cid, skillid, n) doPlayerAddSpentMana(cid, amount) doPlayerAddSoul(cid, soul) doPlayerAddItem(uid, itemid[, count/subtype[, canDropOnMap]]) doPlayerAddItemEx(cid, uid[, canDropOnMap]) doPlayerSendTextMessage(cid, MessageClasses, message) doPlayerSendChannelMessage(cid, author, message, SpeakClasses, channel) doPlayerSendToChannel(cid, targetId, SpeakClasses, message, channel[, time]) doPlayerAddMoney(cid, money) doPlayerRemoveMoney(cid, money) doPlayerWithdrawMoney(cid, money) doPlayerDepositMoney(cid, money) doPlayerTransferMoneyTo(cid, target, money) doPlayerPopupFYI(cid, message) doPlayerSendTutorial(cid, id) doPlayerAddMapMark(cid, pos, type[, description]) doPlayerAddPremiumDays(cid, days) doPlayerAddBlessing(cid, blessing) doPlayerAddStamina(cid, minutes) doPlayerResetIdleTime(cid) doPlayerLearnInstantSpell(cid, name) doPlayerUnlearnInstantSpell(cid, name) doPlayerFeed(cid, food) doPlayerSendCancel(cid, text) doPlayerSendDefaultCancel(cid, ReturnValue) doPlayerSetExperienceRate(cid, value) doPlayerSetMagicRate(cid, value) doPlayerSetSkillRate(cid, skill, value) doPlayerJoinParty(cid, lid) doPlayerSendOutfitWindow(cid) doCreateItem(itemid, type/count, pos) doCreateItemEx(itemid[, count/subtype]) doAddContainerItemEx(uid, virtuid) doAddContainerItem(uid, itemid[, count/subtype]) doChangeTypeItem(uid, newtype) doDecayItem(uid) doRemoveItem(uid[, n]) doTransformItem(uid, toitemid[, count/subtype]) doSetItemActionId(uid, actionid) doSetItemText(uid, text[, writer[, date]]) doSetItemSpecialDescription(uid, desc) doSetItemOutfit(cid, item, time) doTileAddItemEx(pos, uid) doTileQueryAdd(uid, pos[, flags]) doAddCondition(cid, condition) doRemoveCondition(cid, type[, subId]) doRemoveConditions(cid[, onlyPersistent]) doAreaCombatHealth(cid, type, pos, area, min, max, effect) doTargetCombatHealth(cid, target, type, min, max, effect) doAreaCombatMana(cid, pos, area, min, max, effect) doTargetCombatMana(cid, target, min, max, effect) doAreaCombatCondition(cid, pos, area, condition, effect) doTargetCombatCondition(cid, target, condition, effect) doAreaCombatDispel(cid, pos, area, type, effect) doTargetCombatDispel(cid, target, type, effect) doCombat(cid, combat, param) doTeleportThing(cid, newpos[, pushmove]) doCreateTeleport(itemid, topos, createpos) doSendMagicEffect(pos, type[, creature]) doSendDistanceShoot(frompos, topos, type[, creature]) doSendAnimatedText(pos, text, color[, creature]) doShowTextDialog(cid, itemid, text) doRelocate(pos, posTo) doBroadcastMessage(message, type) doWaypointAddTemporial(name, pos) doSetGameState(id) doAddIpBanishment(ip[, length[, comment[, admin]]]) doAddNamelock(name[, reason[, action[, comment[, admin]]]]) doAddBanishment(accId[, length[, reason[, action[, comment[, admin]]]]]) doAddDeletion(accId[, reason[, action[, comment[, admin]]]]]) doAddNotation(accId[, reason[, action[, comment[, admin]]]]]) doRemoveIpBanishment(ip[, mask]) doRemoveNamelock(name) doRemoveBanisment(accId) doRemoveDeletion(accId) doRemoveNotations(accId) doSaveServer() doReloadInfo() doCleanHouse(houseId) doCleanMap() doRefreshMap() //is* isCreature(cid) isMonster(uid) isNpc(uid) isPlayer(cid) isPlayerPzLocked(cid) isItemStackable(itemid) isItemRune(itemid) isItemMovable(itemid) isItemDoor(itemid) isItemContainer(itemid) isItemFluidContainer(itemid) isContainer(uid) isCorpse(uid) isMovable(uid) isSightClear(fromPos, toPos, floorCheck) isIpBanished(ip[, mask]) isPlayerNamelocked(name) isAccountBanished(accId) isAccountDeleted(accId) isInArray({array}, value) //others registerCreatureEvent(uid, eventName) createCombatArea({area}[, {exArea}]) createConditionObject(type[, ticks[, buff[, subId]]]) addDamageCondition(condition, rounds, time, value) addOutfitCondition(condition, lookTypeEx, lookType, lookHead, lookBody, lookLegs, lookFeet) createCombatObject() numberToVariant(number) stringToVariant(string) positionToVariant(pos) targetPositionToVariant(pos) variantToNumber(var) variantToString(var) variantToPosition(var) canPlayerWearOutfit(cid, looktype, addons) executeRaid(name) addEvent(callback, delay, ...) stopEvent(eventid) hasProperty(uid) //db table db.executeQuery(query) db.storeQuery(query) db.escapeString(str) db.escapeBlob(s, length) db.stringComparisonOperator() //result table result.getDataInt(resId, s) result.getDataLong(resId, s) result.getDataString(resId, s) result.getDataStream(resId, s, length) result.next(resId) result.free(resId) //bit table #bit.cast bit.bnot(n) bit.band(type, n) bit.bor(type, n) bit.bxor(type, n) bit.lshift(type, n) bit.rshift(type, n) #bit.arshift #bit.ucast bit.ubnot(n) bit.uband(type, n) bit.ubor(type, n) bit.ubxor(type, n) bit.ulshift(type, n) bit.urshift(type, n) #bit.uarshift //compats table.getPos = table.find doSetCreatureDropLoot = doCreatureSetDropLoot doPlayerSay = doCreatureSay doPlayerAddMana = doCreatureAddMana playerLearnInstantSpell = doPlayerLearnInstantSpell doPlayerRemOutfit = doPlayerRemoveOutfit pay = doPlayerRemoveMoney broadcastMessage = doBroadcastMessage getPlayerName = getCreatureName getPlayerPosition = getCreaturePosition getCreaturePos = getCreaturePosition creatureGetPosition = getCreaturePosition getPlayerMana = getCreatureMana getPlayerMaxMana = getCreatureMaxMana hasCondition = getCreatureCondition isMoveable = isMovable isItemMoveable = isItemMovable saveData = saveServer savePlayers = saveServer getPlayerSkill = getPlayerSkillLevel getPlayerSkullType = getCreatureSkullType getAccountNumberByName = getAccountIdByName getIPByName = getIpByName getPlayersByIP = getPlayersByIp getThingfromPos = getThingFromPos getPlayersByAccountNumber = getPlayersByAccountId getIPByPlayerName = getIpByName getPlayersByIPNumber = getPlayersByIp getAccountNumberByPlayerName = getAccountIdByName convertIntToIP = doConvertIntegerToIp convertIPToInt = doConvertIpToInteger queryTileAddThing = doTileQueryAdd getTileHouseInfo = getHouseFromPos executeRaid = doExecuteRaid saveServer = doSaveServer cleanHouse = doCleanHouse cleanMap = doCleanMap shutdown = doShutdown mayNotMove = doCreatureSetNoMove doPlayerSetNoMove = doCreatureSetNoMove getPlayerNoMove = getCreatureNoMove getConfigInfo = getConfigValue //lua-made functions doPlayerGiveItem(cid, itemid, amount, subType) doPlayerTakeItem(cid, itemid, amount) doPlayerBuyItem(cid, itemid, count, cost, charges) doPlayerBuyItemContainer(cid, containerid, itemid, count, cost, charges) doPlayerSellItem(cid, itemid, count, cost) isInRange(pos, fromPos, toPos) isPremium(cid) getMonthDayEnding(day) getMonthString(m) getArticle(str) isNumber(str) getDistanceBetween(firstPosition, secondPosition) doPlayerAddAddons(cid, addon) isSorcerer(cid) isDruid(cid) isPaladin(cid) isKnight(cid) isRookie(cid) getDirectionTo(pos1, pos2) getPlayerLookPos(cid) getPosByDir(fromPosition, direction, size) getPlayerMoney(cid) doPlayerWithdrawAllMoney(cid) doPlayerDepositAllMoney(cid) doPlayerTransferAllMoneyTo(cid, target) playerExists(name) getTibiaTime() doWriteLogFile(file, text) isInArea(pos, fromPos, toPos) getExperienceForLevel(lv) doMutePlayer(cid, time) getPlayerVocationName(cid) getPromotedVocation(vid) doPlayerRemovePremiumDays(cid, days) getPlayerMasterPos(cid) getItemNameById(itemid) getItemPluralNameById(itemid) getItemArticleById(itemid) getItemName(uid) getItemPluralName(uid) getItemArticle(uid) getItemText(uid) getItemWriter(uid) getItemDate(uid) getTilePzInfo(pos) getTileZoneInfo(pos) debugPrint(text) doShutdown() doSummonCreature(name, pos) getOnlinePlayers() getPlayerByName(name) isPlayerGhost(cid) getPlayerFrags(cid) getPartyLeader(cid) isInParty(cid) isPrivateChannel(channelId) doConvertIntegerToIp(int, mask) doConvertIpToInteger(int, mask) getBooleanFromString(str) doCopyItem(item, attributes) exhaustion.check(cid, storage) exhaustion.get(cid, storage) exhaustion.set(cid, storage, time) exhaustion.make(cid, storage, time) table.find(table, value) table.isStrIn(txt, str) table.countElements(table, item) table.getCombinations(table, num) string.split(str) string.trim(str) string.explode(str, sep) -
doda4ever recebeu reputação de lfeesp1 em Retirando Bug Do Rme 8.60http://remeresmapeditor.com/marklar.php?clients
nginx This site is not hosted on this server.
-
doda4ever recebeu reputação de Coul em TFS 0.4 CASTProcure em ou
Procure em qualquer outro servidor para download que alguns já vem com database pronta!
Estou com linux ubuntu 10.04 vou tentar compilar e checar as funções básicas de jogo, dos monstros e cast. Tomara que tudo de certo.
Luan...
Re de:
TESTADO EM WINDOWS, DEBIAN 7.8, UBUNTU 12.04 E 14.05!
Eu testei nas versões 12.04 e 14.05 e nada! A versão 10.04 funcionou perfeitamente. Talvez tenha que consertar a versão do SO necessária para o pessoal não ter problemas..
-
doda4ever recebeu reputação de Bruno Minervino em eventos para TFS 1.0....
-
doda4ever deu reputação a luanluciano93 em (Resolvido)[TFS 1.0] Shopsystem - Delivery!Testa ai.
-- ### CONFIG ### -- message send to player by script "type" (types you can check in "global.lua") SHOP_MSG_TYPE = 18 -- time (in seconds) between connections to SQL database by shop script SQL_interval = 30 -- ### END OF CONFIG ### function onThink(interval, lastExecution) local result_plr = db.storeQuery("SELECT * FROM z_ots_comunication") if(result_plr ~= false) then repeat local id = tonumber(result.getDataInt(result_plr, "id")) local action = tostring(result.getDataString(result_plr, "action")) local delete = tonumber(result.getDataInt(result_plr, "delete_it")) local cid = getPlayerByName(tostring(result.getDataString(result_plr, "name"))) if(cid) then local itemtogive_id = tonumber(result.getDataInt(result_plr, "param1")) local itemtogive_count = tonumber(result.getDataInt(result_plr, "param2")) local container_id = tonumber(result.getDataInt(result_plr, "param3")) local container_count = tonumber(result.getDataInt(result_plr, "param4")) local add_item_type = tostring(result.getDataString(result_plr, "param5")) local add_item_name = tostring(result.getDataString(result_plr, "param6")) local received_item = 0 local full_weight = 0 if(add_item_type == 'container') then container_weight = getItemWeight(container_id, 1) if(isItemRune(itemtogive_id)) then items_weight = container_count * getItemWeight(itemtogive_id, 1) else items_weight = container_count * getItemWeight(itemtogive_id, itemtogive_count) end full_weight = items_weight + container_weight else full_weight = getItemWeight(itemtogive_id, itemtogive_count) if(isItemRune(itemtogive_id)) then full_weight = getItemWeight(itemtogive_id, 1) else full_weight = getItemWeight(itemtogive_id, itemtogive_count) end end local free_cap = getPlayerFreeCap(cid) if(full_weight <= free_cap) then if(add_item_type == 'container') then local new_container = doCreateItemEx(container_id, 1) local iter = 0 while(iter ~= container_count) do doAddContainerItem(new_container, itemtogive_id, itemtogive_count) iter = iter + 1 end received_item = doPlayerAddItemEx(cid, new_container) else local new_item = doCreateItemEx(itemtogive_id, itemtogive_count) received_item = doPlayerAddItemEx(cid, new_item) end if(type(received_item) == "number" and received_item == RETURNVALUE_NOERROR) then doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, 'You received >> '.. add_item_name ..' << from OTS shop.') db.query("DELETE FROM `z_ots_comunication` WHERE `id` = " .. id .. ";") db.query("UPDATE `z_shop_history_item` SET `trans_state`='realized', `trans_real`=" .. os.time() .. " WHERE id = " .. id .. ";") else doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop is waiting for you. Please make place for this item in your backpack/hands and wait about '.. SQL_interval ..' seconds to get it.') end else doPlayerSendTextMessage(cid, SHOP_MSG_TYPE, '>> '.. add_item_name ..' << from OTS shop is waiting for you. It weight is '.. full_weight ..' oz., you have only '.. free_cap ..' oz. free capacity. Put some items in depot and wait about '.. SQL_interval ..' seconds to get it.') end end until not result.next(result_plr) result.free(result_plr) end return true end Créditos: Gesior.pl
-
doda4ever deu reputação a paulo thush em 10.37 Epic Real MAP REALEASE!Realx64 Datapack [10.37]: Speedyshare / Mediafire / 4Shared
Scan Virustotal: Virustotal Realx64 Datapack [10.37]
Ip Changer: http://static.otland.net/ipchanger.exe [Requirements:Microsoft .NET Framework 3.5.]
Tibia Client 10.37: http://static.tibia.com/download/tibia1037.exe
RME Map editor for this map: RME 3.0 Beta 6
If you cant run the server and get error try to install this:
64x bit: http://www.microsoft...s.aspx?id=14632
Also you maybe need this to:
http://www.microsoft...s.aspx?id=40784
For website, here is Gesior for TFS 1.0: Gesior TFS 1.0
creditos: Dark ShaoOz quem mais tiver participação nesse projeto deixe mensagem que eu colocarei seus devidos créditos!!!
Não colocarei créditos meus pq apenas peguei o servidor traduzi e estou trazendo para o Tibiaking.
Creditos
Sheyks (Pela imagens.)
-
doda4ever deu reputação a alissonfgp em [LINK OFF]Global Map 9.83Global Server não é 100% full pq praticamente nao existe é raro achar sao poucos os que tem.
Credits:
Denner altero até a versao 8.6 o resto eu que alterei...
O distro esta junto e as Sources eu nao vou poder postar por enquanto. =/
Pedido nao copiem e postem em outro forum, pq eu ja vo fazer isso .
Link: http://www.4shared.com/rar/sJ-VeQJQ/Global_98.html
Scan: https://www.virustotal.com/pt-br/url/941b32a96c00eeaa445df6c31d1becfb5435da0a6fd506698a2980683b75aa3f/analysis/1369167122/
Sources + DB: http://www.4shared.com/rar/Z5mZuL5C/03r_983.html
TFS Roda em win 32 bits e 64 bits, Usando LaaTiDoo com windows 64bits ele abre mapa de até 115 mb que pelo- eu pude testar, agr se abre com mais eu nao sei.
Bom galera aqui nao deu para min remover esse bug pq ja tinha feito upload e minha net ja é meio lenta entao refazer iria demorar + ainda é só deleta um pizo na area vermelha tem uma borda trapando passagen dos player nesse canto.
Disse que iria postar sources e RME mas nao vou postar mais, depois que praticamente copiaram meu topico nao vou postar mais nada no forum, esse é meu ultimo post...
ADICIONADO AS SOURCES....
Qualquer bug me avisa que arrumo.
UPDATE FEITO ADICIONADOS ALGUMAS NOVAS AREAS 9.8X+ E REMOVIDOS OS BUGS ENCONTRADOS....
-
doda4ever deu reputação a Luizbaiak em LINK OFF [ORIGINAL] (10.10) New Baiak Yurots V1.0 SQLITE CAST SYSTEM E WAR SYSTEM 100%Confira Novo Servidor Baiak
Devilbaiak.ml
Olá Galerinha Tibiana!
Durante 3 anos o baiak ainda está se atualizando cada vez mais e agora eu venho trazer a nova versao 10.10 não esta 100% mais garanto que vao gostar,entao vamos ver oque há de novo nele ?
Essa Nova Versão eu conseguir criar em apenas 2 dias e meio e nao deu tempo de testar mais se houver bugs comentem por favor.
Versão x10.1- 1.0 Oque há de novo ?
• Todas as mountarias da versao 10.10
• Todos os outfits 10.10
• Todos os items 10.10
• Monsters ainda em andamento.
• Templo com cara de 10.10
• City Vip com novo visual 10.10
• War System 100%
- Comandos :/war invite,nomedaguildrival outra guild ativar a war /accept war,guildrival cancelar war . /war cancel,guildrival
• Cast System 100%
- Comandos:!cast list para ver casts abertos,!cast nomedoplayer para entrar, !cast exit para sair do cast que voce está !cast on para voce abrir um cast e !cast off para sair
• Novo Npc no templo que vende items 10.10
• Novo npc que vende items vip
• Bug das houses retirados
• Bug da Sql retirado
• Novos Comandos
/rank
!mount nomedamount
!addon nomedoaddon
!changesex
!buyhouse,!leavehouse,alana res,!sellhouse funcionando 100%
e muito mais que nao veio na cabeça mais quando eu lembrar posto.
O Servidor está em SQL pronto para por online e os erros do distro nao encomodam o server.
• Baiak Yurots V5.2 Oque Mudou ?
•Tirei bug das houses
•Tirei todos os erro do distro
•Arrumei o lado >> da city vip agora mais rox.
• Baiak Yurots V5.1 Oque Mudou ?
• Mudei a Quest do templo lv 150 ganha 2kk agora ganha só 500k
• Melhorei os teleports master lv 300+ agora tem 4 novas quest e 2 hunt +
• Mudei respaw de todas as hunts free , vip e master agora ta 5x melhor.
• Mudei Tempo da loteria tava 15 em 15 minutos agora ta de 1 em 1 hora.
• Melhorei a Exori gran do kina.
• Mudei os loot do monster bosses agora igual da versao 10.30 do global
• Adicionei quest do addon doll na area d lvel 300+
• Adicionei Quest do 2kk na area d Lvl 300+
• Adicionei Quest do necromancer shield na area de Lv 300+
• Adicionei Quest do Dwarven Set e hornede helmet na area de level 300+
• Adicionei o novo monster Master Medusa Lv 300+
• Adicionei 2 novas hunt de Master Medusa.
Se eu lembrar mas alguma coisa eu posto. :S
• Baiak Yurots V5.0 Oque Mudou ?
• Agora a City Está Maior Mais Bonita e Com Mais Houses.
• Novo Sistema de Treiner não prescisa andar muito para axar um livre.
• Novos monstros vip ( Sea Serpent Vip , Hellhound vip , night mare vip , fury vip ) novos monstros master ( hydra master , frost master , grim master e demon master).
• Nova Quest Master Com Armas Para todas as vocaçao.
• Agora o NPC VIP Vende e compra items vip, pois se voce pegar item vip de algum red algo assim voce pode vender mais so que o npc compra 60% mais barato ☺
• Novo Npc que vender Red Remover.
• Novo Templo.
• Novas Quests.
• Novo Depot.
• Novos Commandos ( !food Compra 100 , !topfrags Ver quem é o top frag , !glist ver as guild do server e !glist Nameguild para ver os player da guild.
• Teleports Free e vip Agora com nova cara.
• Novo Caminho Para Poi no mesmo lugar so que mais bonito.
• Addon agora é com addon doll npc Varkhal Vende.
• Systema de Loteria a cada 2 Horas.
• Nova arena de team god que organiza.
E muito Mais ..
Novos Items.
Master vip Quest
Teleports Master
Templo vip
Templo city
Teleports Master
Teleport Free
O Server Está FULL EM SQL Só Baixar e Por Online Abaixo !
DOWNLOAD
4shared
SCAN
VirusTotal
Testado 32bits windows 7.
ACC DO GOD
god/god
Creditos
10% GOD Bon | Por editar em 2008 90% Baiak Lula = Luizbaiak | Por editar2010 a 2014
Obrigado bom jogo! GOSTOU? DE REP+.
-
doda4ever recebeu reputação de narazaky em (Resolvido)Aprender a linguagem.Sr, elas já vem embutidas no tfsourcee
//get* getCreatureHealth(cid) getCreatureMaxHealth(cid) getCreatureMana(cid) getCreatureMaxMana(cid) getCreatureMaster(cid) getCreatureSummons(cid) getCreatureOutfit(cid) getCreaturePosition(cid) getCreatureName(cid) getCreatureSpeed(cid) getCreatureBaseSpeed(cid) getCreatureTarget(cid) getCreatureByName(name) getCreatureSkullType(cid) getCreatureCondition(cid, condition[, subId]) getCreatureNoMove(cid) getMonsterInfo(name) getMonsterHealingSpells(name) getMonsterAttackSpells(name) getMonsterLootList(name) getMonsterTargetList(cid) getMonsterFriendList(cid) getPlayerByNameWildcard(name~) getPlayerLossSkill(cid) getPlayerLossPercent(cid, lossType) getPlayerGUIDByName(name[, multiworld]) getPlayerNameByGUID(guid[, multiworld]) getPlayerFood(cid) getPlayerLevel(cid) getPlayerExperience(cid) getPlayerMagLevel(cid[, ignoreBuffs]) getPlayerSpentMana(cid) getPlayerAccess(cid) getPlayerSkillLevel(cid, skillid) getPlayerSkillTries(cid, skillid) getPlayerTown(cid) getPlayerVocation(cid) getPlayerRequiredMana(cid, magicLevel) getPlayerRequiredSkillTries(cid, skillId, skillLevel) getPlayerItemCount(cid, itemid) getPlayerSoul(cid) getPlayerAccountId(cid) getPlayerAccount(cid) getPlayerIp(cid) getPlayerFreeCap(cid) getPlayerLight(cid) getPlayerSlotItem(cid, slot) getPlayerWeapon(cid[, ignoreAmmo]) getPlayerItemById(cid, deepSearch, itemId[, subType]) getPlayerDepotItems(cid, depotid) getPlayerGuildId(cid) getPlayerGuildName(cid) getPlayerGuildRank(cid) getPlayerGuildNick(cid) getPlayerGuildLevel(cid) getPlayerSex(cid) getPlayerLookDir(cid) getPlayerStorageValue(uid, valueid) getPlayerGUID(cid) getPlayerFlagValue(cid, flag) getPlayerCustomFlagValue(cid, flag) getPlayerPromotionLevel(cid) getPlayerGroupId(cid) getPlayerLearnedInstantSpell(cid, name) getPlayerInstantSpellCount(cid) getPlayerInstantSpellInfo(cid, index) getPlayerSex(cid) getPlayerBlessing(cid, blessing) getPlayerStamina(cid) getPlayerExtraExpRate(cid) getPlayerPartner(cid) getPlayerParty(cid) getPlayerPremiumDays(cid) getPlayerBalance(cid) getPlayerRedSkullTicks(cid) getPlayerRates(cid) getInstantSpellInfo(cid, name) getPlayersByAccountId(accountNumber) getPlayersByIp(ip[, mask = 0xFFFFFFFF]) getPlayersOnline() getPartyMembers(lid) getAccountIdByName(name) getAccountByName(name) getAccountIdByAccount(accName) getAccountByAccountId(accId) getIpByName(name) getItemRWInfo(uid) getItemDescriptionsById(itemid) getItemWeightById(itemid, count[, precise]) getItemDescriptions(uid) getItemWeight(uid[, precise]) getItemAttack(uid) getItemExtraAttack(uid) getItemDefense(uid) getItemExtraDefense(uid) getItemArmor(uid) getItemAttackSpeed(uid) getItemHitChance(uid) getItemShootRange(uid) getItemIdByName(name[, reportError]) getItemLevelDoor(itemid) getItemWeaponType(uid) getFluidSourceType(type) getContainerSize(uid) getContainerCap(uid) getContainerCapById(itemid) getContainerItem(uid, slot) getDepotId(uid) getTileItemById(pos, itemId[, subType]) getTileItemByType(pos, type) getTileThingByPos(pos) getTileInfo(pos) getTopCreature(pos) getClosestFreeTile(cid, targetpos[, extended[, ignoreHouse]]) getThingFromPos(pos) getThing(uid) getThingPos(uid) getHouseOwner(houseid) getHouseName(houseid) getHouseEntry(houseid) getHouseRent(houseid) getHousePrice(houseid) getHouseTown(houseid) getHouseAccessList(houseid, listid) getHouseByPlayerGUID(playerGUID) getHouseFromPos(pos) getHouseTilesSize(houseid) getTownId(townName) getTownName(townId) getTownTemplePosition(townId) getTownHouses(townId) getWorldType() getWorldTime() getWorldLight() getWorldCreatures(type) //0 players, 1 monsters, 2 npcs, 3 all getWorldUpTime() getHighscoreString(skillId) getVocationInfo(id) getGuildId(guildName) getGuildMotd(guildId) getSpectators(centerPos, rangex, rangey, multifloor) getSearchString(fromPosition, toPosition[, fromIsCreature[, toIsCreature]]) getWaypointPosition(name) getGameState() getNotationsCount(accId) getBanData(value) getBanList(type[, value]) getBanReason(id) getBanAction(id[, ipBanishment]) getGlobalStorageValue(valueid) getExperienceStage(level) getConfigFile() getConfigValue(key) getLogsDir() getDataDir() //set* setCreatureMaxHealth(cid, health) setCreatureMaxMana(cid, mana) setPlayerStorageValue(uid, valueid, newvalue) setPlayerGroupId(cid, newGroupId) setPlayerPromotionLevel(cid, level) setPlayerStamina(cid, minutes) setPlayerExtraExpRate(cid, value) setPlayerPartner(cid, guid) setHouseOwner(houseid, ownerGUID) setHouseAccessList(houseid, listid, listtext) setItemName(uid) setItemPluralName(uid) setItemArticle(uid) setItemAttack(uid, attack) setItemExtraAttack(uid, extraattack) setItemDefense(uid, defense) setItemArmor(uid, armor) setItemExtraDefense(uid, extradefense) setItemAttackSpeed(uid, attackspeed) setItemHitChance(uid, hitChance) setItemShootRange(uid, shootRange) setCombatArea(combat, area) setCombatCondition(combat, condition) setCombatParam(combat, key, value) setConditionParam(condition, key, value) setCombatCallBack(combat, key, function_name) setCombatFormula(combat, type, mina, minb, maxa, maxb) setConditionFormula(combat, mina, minb, maxa, maxb) setGlobalStorageValue(valueid, newvalue) setWorldType(type) //do* doCreatureAddHealth(cid, health[, force]) doCreatureAddMana(cid, mana) doCreatureSetDropLoot(cid, doDrop) doCreatureSetSkullType(cid, skull) doCreatureSetLookDir(cid, dir) doCreatureChangeOutfit(cid, outfit) doCreatureSay(cid, text, type[, pos]) doCreatureSetNoMove(cid, cannotMove) doSetCreatureLight(cid, lightLevel, lightColor, time) doSetCreatureOutfit(cid, outfit, time) doRemoveCreature(cid) doMoveCreature(cid, direction) doConvinceCreature(cid, target) doChallengeCreature(cid, target) doChangeSpeed(cid, delta) doSummonMonster(name, pos) doCreateMonster(name, pos) doMonsterChangeTarget(cid) doMonsterSetTarget(cid, target) doCreateNpc(name, pos) doSetMonsterOutfit(cid, name, time) doPlayerBroadcastMessage(cid, message[, type]) doPlayerSetSex(cid, newSex) doPlayerSetTown(cid, townid) doPlayerSetVocation(cid,voc) doPlayerRemoveItem(cid, itemid, count[, subtype]) doPlayerAddExp(cid, exp) doPlayerSetGuildId(cid, id) doPlayerSetGuildRank(cid, rank) doPlayerSetGuildNick(cid, nick) doPlayerAddOutfit(cid,looktype, addons) doPlayerRemoveOutfit(cid,looktype, addons) doPlayerSetRedSkullTicks(cid, amount) doPlayerSetLossPercent(cid, lossType, newPercent) doPlayerSetLossSkill(cid, doLose) doPlayerAddSkillTry(cid, skillid, n) doPlayerAddSpentMana(cid, amount) doPlayerAddSoul(cid, soul) doPlayerAddItem(uid, itemid[, count/subtype[, canDropOnMap]]) doPlayerAddItemEx(cid, uid[, canDropOnMap]) doPlayerSendTextMessage(cid, MessageClasses, message) doPlayerSendChannelMessage(cid, author, message, SpeakClasses, channel) doPlayerSendToChannel(cid, targetId, SpeakClasses, message, channel[, time]) doPlayerAddMoney(cid, money) doPlayerRemoveMoney(cid, money) doPlayerWithdrawMoney(cid, money) doPlayerDepositMoney(cid, money) doPlayerTransferMoneyTo(cid, target, money) doPlayerPopupFYI(cid, message) doPlayerSendTutorial(cid, id) doPlayerAddMapMark(cid, pos, type[, description]) doPlayerAddPremiumDays(cid, days) doPlayerAddBlessing(cid, blessing) doPlayerAddStamina(cid, minutes) doPlayerResetIdleTime(cid) doPlayerLearnInstantSpell(cid, name) doPlayerUnlearnInstantSpell(cid, name) doPlayerFeed(cid, food) doPlayerSendCancel(cid, text) doPlayerSendDefaultCancel(cid, ReturnValue) doPlayerSetExperienceRate(cid, value) doPlayerSetMagicRate(cid, value) doPlayerSetSkillRate(cid, skill, value) doPlayerJoinParty(cid, lid) doPlayerSendOutfitWindow(cid) doCreateItem(itemid, type/count, pos) doCreateItemEx(itemid[, count/subtype]) doAddContainerItemEx(uid, virtuid) doAddContainerItem(uid, itemid[, count/subtype]) doChangeTypeItem(uid, newtype) doDecayItem(uid) doRemoveItem(uid[, n]) doTransformItem(uid, toitemid[, count/subtype]) doSetItemActionId(uid, actionid) doSetItemText(uid, text[, writer[, date]]) doSetItemSpecialDescription(uid, desc) doSetItemOutfit(cid, item, time) doTileAddItemEx(pos, uid) doTileQueryAdd(uid, pos[, flags]) doAddCondition(cid, condition) doRemoveCondition(cid, type[, subId]) doRemoveConditions(cid[, onlyPersistent]) doAreaCombatHealth(cid, type, pos, area, min, max, effect) doTargetCombatHealth(cid, target, type, min, max, effect) doAreaCombatMana(cid, pos, area, min, max, effect) doTargetCombatMana(cid, target, min, max, effect) doAreaCombatCondition(cid, pos, area, condition, effect) doTargetCombatCondition(cid, target, condition, effect) doAreaCombatDispel(cid, pos, area, type, effect) doTargetCombatDispel(cid, target, type, effect) doCombat(cid, combat, param) doTeleportThing(cid, newpos[, pushmove]) doCreateTeleport(itemid, topos, createpos) doSendMagicEffect(pos, type[, creature]) doSendDistanceShoot(frompos, topos, type[, creature]) doSendAnimatedText(pos, text, color[, creature]) doShowTextDialog(cid, itemid, text) doRelocate(pos, posTo) doBroadcastMessage(message, type) doWaypointAddTemporial(name, pos) doSetGameState(id) doAddIpBanishment(ip[, length[, comment[, admin]]]) doAddNamelock(name[, reason[, action[, comment[, admin]]]]) doAddBanishment(accId[, length[, reason[, action[, comment[, admin]]]]]) doAddDeletion(accId[, reason[, action[, comment[, admin]]]]]) doAddNotation(accId[, reason[, action[, comment[, admin]]]]]) doRemoveIpBanishment(ip[, mask]) doRemoveNamelock(name) doRemoveBanisment(accId) doRemoveDeletion(accId) doRemoveNotations(accId) doSaveServer() doReloadInfo() doCleanHouse(houseId) doCleanMap() doRefreshMap() //is* isCreature(cid) isMonster(uid) isNpc(uid) isPlayer(cid) isPlayerPzLocked(cid) isItemStackable(itemid) isItemRune(itemid) isItemMovable(itemid) isItemDoor(itemid) isItemContainer(itemid) isItemFluidContainer(itemid) isContainer(uid) isCorpse(uid) isMovable(uid) isSightClear(fromPos, toPos, floorCheck) isIpBanished(ip[, mask]) isPlayerNamelocked(name) isAccountBanished(accId) isAccountDeleted(accId) isInArray({array}, value) //others registerCreatureEvent(uid, eventName) createCombatArea({area}[, {exArea}]) createConditionObject(type[, ticks[, buff[, subId]]]) addDamageCondition(condition, rounds, time, value) addOutfitCondition(condition, lookTypeEx, lookType, lookHead, lookBody, lookLegs, lookFeet) createCombatObject() numberToVariant(number) stringToVariant(string) positionToVariant(pos) targetPositionToVariant(pos) variantToNumber(var) variantToString(var) variantToPosition(var) canPlayerWearOutfit(cid, looktype, addons) executeRaid(name) addEvent(callback, delay, ...) stopEvent(eventid) hasProperty(uid) //db table db.executeQuery(query) db.storeQuery(query) db.escapeString(str) db.escapeBlob(s, length) db.stringComparisonOperator() //result table result.getDataInt(resId, s) result.getDataLong(resId, s) result.getDataString(resId, s) result.getDataStream(resId, s, length) result.next(resId) result.free(resId) //bit table #bit.cast bit.bnot(n) bit.band(type, n) bit.bor(type, n) bit.bxor(type, n) bit.lshift(type, n) bit.rshift(type, n) #bit.arshift #bit.ucast bit.ubnot(n) bit.uband(type, n) bit.ubor(type, n) bit.ubxor(type, n) bit.ulshift(type, n) bit.urshift(type, n) #bit.uarshift //compats table.getPos = table.find doSetCreatureDropLoot = doCreatureSetDropLoot doPlayerSay = doCreatureSay doPlayerAddMana = doCreatureAddMana playerLearnInstantSpell = doPlayerLearnInstantSpell doPlayerRemOutfit = doPlayerRemoveOutfit pay = doPlayerRemoveMoney broadcastMessage = doBroadcastMessage getPlayerName = getCreatureName getPlayerPosition = getCreaturePosition getCreaturePos = getCreaturePosition creatureGetPosition = getCreaturePosition getPlayerMana = getCreatureMana getPlayerMaxMana = getCreatureMaxMana hasCondition = getCreatureCondition isMoveable = isMovable isItemMoveable = isItemMovable saveData = saveServer savePlayers = saveServer getPlayerSkill = getPlayerSkillLevel getPlayerSkullType = getCreatureSkullType getAccountNumberByName = getAccountIdByName getIPByName = getIpByName getPlayersByIP = getPlayersByIp getThingfromPos = getThingFromPos getPlayersByAccountNumber = getPlayersByAccountId getIPByPlayerName = getIpByName getPlayersByIPNumber = getPlayersByIp getAccountNumberByPlayerName = getAccountIdByName convertIntToIP = doConvertIntegerToIp convertIPToInt = doConvertIpToInteger queryTileAddThing = doTileQueryAdd getTileHouseInfo = getHouseFromPos executeRaid = doExecuteRaid saveServer = doSaveServer cleanHouse = doCleanHouse cleanMap = doCleanMap shutdown = doShutdown mayNotMove = doCreatureSetNoMove doPlayerSetNoMove = doCreatureSetNoMove getPlayerNoMove = getCreatureNoMove getConfigInfo = getConfigValue //lua-made functions doPlayerGiveItem(cid, itemid, amount, subType) doPlayerTakeItem(cid, itemid, amount) doPlayerBuyItem(cid, itemid, count, cost, charges) doPlayerBuyItemContainer(cid, containerid, itemid, count, cost, charges) doPlayerSellItem(cid, itemid, count, cost) isInRange(pos, fromPos, toPos) isPremium(cid) getMonthDayEnding(day) getMonthString(m) getArticle(str) isNumber(str) getDistanceBetween(firstPosition, secondPosition) doPlayerAddAddons(cid, addon) isSorcerer(cid) isDruid(cid) isPaladin(cid) isKnight(cid) isRookie(cid) getDirectionTo(pos1, pos2) getPlayerLookPos(cid) getPosByDir(fromPosition, direction, size) getPlayerMoney(cid) doPlayerWithdrawAllMoney(cid) doPlayerDepositAllMoney(cid) doPlayerTransferAllMoneyTo(cid, target) playerExists(name) getTibiaTime() doWriteLogFile(file, text) isInArea(pos, fromPos, toPos) getExperienceForLevel(lv) doMutePlayer(cid, time) getPlayerVocationName(cid) getPromotedVocation(vid) doPlayerRemovePremiumDays(cid, days) getPlayerMasterPos(cid) getItemNameById(itemid) getItemPluralNameById(itemid) getItemArticleById(itemid) getItemName(uid) getItemPluralName(uid) getItemArticle(uid) getItemText(uid) getItemWriter(uid) getItemDate(uid) getTilePzInfo(pos) getTileZoneInfo(pos) debugPrint(text) doShutdown() doSummonCreature(name, pos) getOnlinePlayers() getPlayerByName(name) isPlayerGhost(cid) getPlayerFrags(cid) getPartyLeader(cid) isInParty(cid) isPrivateChannel(channelId) doConvertIntegerToIp(int, mask) doConvertIpToInteger(int, mask) getBooleanFromString(str) doCopyItem(item, attributes) exhaustion.check(cid, storage) exhaustion.get(cid, storage) exhaustion.set(cid, storage, time) exhaustion.make(cid, storage, time) table.find(table, value) table.isStrIn(txt, str) table.countElements(table, item) table.getCombinations(table, num) string.split(str) string.trim(str) string.explode(str, sep) -
doda4ever deu reputação a Gustavo Ferreira em [Tutorial] Dúvidas sobre ProgramaçãoOlá, Galera do Tibiaking hoje vim trazer para vocês um basico tutorial sobre Programação
O que é source?
Source é o nome dado ao conjunto de códigos que futuramente será um programa, em otserv nem sempre conseguimos esta source, mesmo sendo uma lei sua liberação, o servidor mais usado atualmente “TFS” tem seus códigos liberados e podemos conseguir na seção Download otserv procurando a versão desejada.
Como abrir uma source?
Como os códigos são apenas textos podemos abrir-los em um editor de texto normal, porem para facilitar o trabalho do programador usamos IDE, o mais popular no mundo dos otservs, Dev-cpp.
Como criar um executável (compilar)?
Criar um executável é um trabalho muito simples e existem muitos tutoriais sobre isso na sessão Tutoriais otserv.
O que é uma biblioteca (lib)?
São “arquivos” onde contem sistemas para ser usadas no seu programa, um bom exemplo é a libMySql onde contem funções para trabalhar com Mysql em seu programa.
O que são linguagens de programação?
Como o computador entende apenas 0 e 1 e é muito complica fazer programas usando apenas 0 e 1 foi inventada as linguagens de programação, onde se tem um complicador que transforma códigos em uma linguagem que o computador entenda.Essas linguagens devem seguir uma seqüência lógica, assim fazendo com que o compilador entenda o códigos.
O que é C++?
C++ é a linguagem de programação que é usada em OT.
O que é IDE?
São programas que ajudam o programador na hora de fazer o programa.
O que é um compilador?
É o programa primário onde sua função é transformar códigos feitos em linguagens de programação para uma linguagem compreendida pelo computador.
Esta ai pessoal, Basico mais pra quem ta iniciando em otserv, Eh bom saber!!!
-
doda4ever deu reputação a 9k22 em (8.6x) TFS 0.4_DEV rev3777Servidor: TFS 0.4 3777
Versão: 8.60
Venho disponibilizar o TFS 0.4 3777 (conheçido por ser extremamente estável em LINUX).
Estarei disponibilizando as sources e o executavel (compilado)
Também colocarei o link de um compilador TFS que funciona para compilar qualquer TFS sem bugs.
Sources: Clique Aqui
Scan: https://www.virustotal.com/file/3ccb3...
trunk.r3777.rar
TFs Compilado (compatível com war_system): Clique Aqui
Scan: https://www.virustotal.com/file/84f6...
TheForgottenServer.rar
Link do compilador: http://tibiaking.com/forum/topic/12677-tfs-dev-c-compilador/
Creditos: TFS (criador) - 100%
-
doda4ever deu reputação a Jamison Collins em (8.60) TFS 0.4 Rev 3777 [Sem BUGS]Olá TKbianos,
Para aqueles que usam bastante o distro TFS 0.4.Rev3777, trago até vocês as sourcers + distro compilado sem nenhum bug.
Log de erros consertados em inglês, pois não fui eu quem fiz as alterações (créditos no final do tópico)
Houve umas alterações importantes nos arquivos a cima, então, cuidado na hora de copiar e colar o seu server em cima desse.
Downloads :
TFS 0.4 (Rev 3777 - Sem bugs R12) ----- (Talvez melhor para quem está com dificuldade de compilação)
TFS 0.4 (Rev 3777 - Sem bugs R19) ----- Scan TFS 0.4 (Rev 3777 - Sem bugs R19)
Arquivos Dll -- Scan Arquivos Dll
CRÉDITOS MARAVILHOSOS PARA :
MartyX (100%)
-
doda4ever deu reputação a luanluciano93 em TFS 0.4 CASTOlá pessoal, tive a iniciativa de criar esse tópico para atualizar e otimizar as sources do TFS 0.4 DEV que é uma das mais usadas no mundo do otserv. Conteúdo totalmente gratuito e pretendemos melhora-lo cada vez mais.
Qualquer um pode colaborar, postando bugs, erros, otimizando códigos, comentar aqui no tópico, toda ajuda é bem vinda, vamos tornar essa a melhor source disponível. Conto com vocês.
Versão do Tibia: 8.60
Alguns sistema já implementados na source:
• TFS 0.4 DEV rev 3777 (by TFS Team)
• Anti-Divulgação (.servegame, .no-ip, .net, .com, .org, .pl, .biz, .br, .sytes, .info)
• War System
• Cast System (by Summ)
• Retirado bugs de anti-push ..
• Retirado bugs de elfbot ...
• Retirado erro de não aceitar outros items ...
• Retirado erro de Malformed File ...
• Add creatureevent onMoveItem() ...
• Add função getCreaturePathTo () ...
• E vários outros!
Complementos:
• Add cast System (passo a passo): [AQUI]
• Pode add o comando na config.lua:
healthHealingColor = COLOR_GREEN -- [podendo alterar a cor]. manaHealingColor = COLOR_DARKPURPLE -- [podendo alterar a cor]. Downloads:
• Distro Compilada 32x
• Distro Compilada 64x
• Sources 7
TESTADO EM WINDOWS, DEBIAN 7.8, UBUNTU 12.04 E 14.05!
• Compilar em Linux:
• Erros para arrumar:
Obrigado ao runeraserver pelo incentivo em fixa-la para linux
E é isso pessoal, espero ter ajudado, abraços
-
doda4ever deu reputação a Renato em No-IP bloqueado pela MicrosoftSeu ot aparece como offline? Não consegue colocá-lo no otservlist.org? Entenda!
Microsoft bloqueia No-IP
Na manhã desta segunda feira, a Microsoft bloqueou 22 ips relacionados ao No-IP (os 22 mais usados) justificando que estes ips eram, em sua maioria, usados em malware e atividades maliciosas. Isso significa que, se você tem um otserver com o ip servegame.com ou outros semelhantes do no-ip ele estará bloqueado para usuários windows, ou seja, a maioria do teu público alvo, até porque a porcentagem de usuários Linux é mínima - apenas 0,62% dos downloads do nosso tool de download de clientes de tibia são linux, contra 98,68% de windows e 0,70% de outros SO's.
A no-ip mandou uma nota em seu site esclarecendo todo o problema e disse que já está tentando resolver a situação diretamente com a Microsoft.
Segundo a Info Abril, mais de 4 milhões de usuários foram afetados.
Lista de domínios bloqueados:
3utilities.com, no-ip.biz, serveblog.net, servemp3.com, bounceme.net, no-ip.info, servecounterstrike.com, servepics.com, hopto.org, zapto.org, serveftp.com servequake.com, myftp.biz, no-ip.org, servegame.com, sytes.net, myftp.org, redirectme.net, servehalflife.com, myvnc.com, servebeer.com e servehttp.com.
Alternativas
Se você não pode comprar um domínio próprio, você ainda pode usar alguns domínios dinâmicos da no-ip que não foram bloqueados:
Aconselho não usar o ddns.net e nem o webhop.me porque ambos são bloqueados pelo facebook e você não poderá divulgar por lá caso desejar.
Ou também você pode usar o http://dot.tk onde você pode registrar domínios dns .tk gratuito (dica de Rhuan Gonzaga)
Leia a nota oficial no blog do no-ip (em inglês)
-
doda4ever deu reputação a thiagobji em [Creaturescipt] War System ESTILIZADOOlá galerinha do Tk, venho trazer um War System aqui para vocês exclusivo, não é igual ao War System ORIGINAL, esse é melhor na minha opnião (ESTILIZADO).
Bem, abre a pasta do ot/data/creaturescripts/scripts/warsystem.lua - Se não tiver, você crie - ai dentro do warsystem você coloca:
local guild, enemy, guildFrags, enemyFrags = getPlayerGuildId(cid) local fightingGuilds = {} local tmp = db.getResult("SELECT `guild_id`, `enemy_id`, `guild_kills`, `enemy_kills`, `frags` FROM `guild_wars` WHERE `status` = 1 and (`guild_id` = "..getPlayerGuildId(cid).." or `enemy_id` = "..getPlayerGuildId(cid).. ") ;") warString = "" if tmp:getID() ~= -1 then i = 1 repeat if tmp:getDataInt("guild_id") == guild then enemy = tmp:getDataInt("enemy_id") guildFrags = tmp:getDataInt("guild_kills") enemyFrags = tmp:getDataInt("enemy_kills") else enemy = tmp:getDataInt("guild_id") guildFrags = tmp:getDataInt("enemy_kills") enemyFrags = tmp:getDataInt("guild_kills") end local enemyName, _tmp = "", db.getResult("SELECT `name` FROM `guilds` WHERE `id` = " .. enemy) if(_tmp:getID() ~= -1) then enemyName = _tmp:getDataString("name") _tmp:free() end fightingGuilds[i] = {} fightingGuilds[i].name = enemyName fightingGuilds[i].guildFrags = guildFrags fightingGuilds[i].enemyFrags = enemyFrags fightingGuilds[i].limit = tmp:getDataInt("frags") i = i + 1 until not(tmp:next()) tmp:free() table.sort(fightingGuilds, function (a, B) return (a.name < b.name) end) for k, v in pairs(fightingGuilds) do if (v.guildFrags < v.limit and v.enemyFrags < v.limit ) then if (warString == "") then warString = "Your guild is currently in war with the " .. v.name .. " (" .. v.guildFrags .. ":" .. v.enemyFrags .. " frags, limit ".. v.limit ..")" else warString = warString .. " and with the " .. v.name .. " (" .. v.guildFrags .. ":" .. v.enemyFrags.." frags, limit ".. v.limit .. ")" end end end end if (warString ~= "") then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, warString .. ".") end Agora abra o creaturescripts.xml e coloque isso: <event type="kill" name="warSystem" event="script" value="warsystem.lua"/> Agora abra o login.lua e coloca isso: registerCreatureEvent(cid, "warSystem")
Testado no TFS 3.6, olhem a foto abaixo:
OBS: Peguei esse tutorial de outro fórum.
-
doda4ever deu reputação a xWhiteWolf em [Boss Skill] Aegis of ImmortalFala galera do TK, hoje vim trazer pra vocês um script de um server bem famoso, trata-se de nada mais e nada menos doque a Aegis of Immortal do Fox World. Quase nenhum OTserver consegue me deixar com vontade de jogar, mas se tem um que chegou bem próximo foi o Fox e o motivo é a criatividade dos caras. É muito fácil aprender lua e ser um ótimo scripter mas ter criatividade pra criar esse tipo de script é bem mais raro. Sem mais delongas vou apresentar a idéia do script e logo em seguida ensinar a instalar no seu servidor.
Aegis of the Immortal
Descrição: É obtida 1 carga ao vencer o boss Aegis (aparece em invasões). Com esta técnica, o jogador ganha a aura do boss, e se morrer é teleportado para a Aegis Dimension, e após 3 segundos volta para o lugar que estava, com life e mana full como se não tivesse sido tocado. (limite de 1 carga) Tipo: (B.Skill) Vocações: All Vocations Elemento: n/a fonte: site do fox
Well, o script é bem simpleszinho mas eu apanhei pra caramba pra fazer ele funcionar certinho (acredito que nem o script dos caras do Fox funcione da maneira correta, mas esse daqui vai funcionar)
Antes de tudo você tem que criar uma área no seu map editor e colocar ela inteira como no-pvp e no-logout. Essa vai ser a área que você vai ser teleportado, será a sua "Aegis Dimension".
Feito isso você vai precisar adicionar essa linha em creaturescripts.xml:
<event type="statschange" name="reborn" script="reborn.lua"/> obs: eu levei muito tempo tentando fazer por onPrepareDeath mas aparentemente essa função não funciona tão bem quanto statschange e acabava chamando a si mesma repetidas vezes.
agora crie um arquivo chamado reborn.lua na pasta creaturescripts\scripts e coloque isso dentro dele:
Agora você só tem que adicionar essa linha no creaturescripts\scripts\login.lua (de preferencia antes do ultimo return true)
--- BOSS SKILLS ---- registerCreatureEvent(cid, "reborn") if getPlayerStorageValue(cid, 19332) == -1 then setPlayerStorageValue(cid, 19332, 0) end Agora seu server possui a Aegis of Immortal e você pode configurar essa skill passiva de diferentes maneiras:
1) Pode ser uma quest que dá como prêmio X quantidades dessa skill
2) Um npc que vende X quantidades da skill
3) Um item que ao ser equipado ativa a skill
4) Um boss que vc mata e ganha quantidades dela
5) Um bonus em algum evento
6) Um item de shop
etc.
Tudo que vc precisa fazer é criar um script que dê o storage 19332, o valor do storage é o numero de vezes que vc vai utilizar a skill.
aqui tem um exemplo de uma quest que ganha 5 charges da Aegis of Immortal:
function onUse(cid, item) local storage = 19332 if getPlayerStorageValue(cid, storage) ~= 5 then doPlayerSetStorageValue(cid, storage, 5) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have habilited your [BOSS SKILL]") else doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Your [BOSS SKILL] is already with "..getPlayerStorageValue(cid, storage).." charges.") end return true end e aqui tem algumas fotos de como fica no seu server:
Espero que vcs tenham gostado..
Vou dar 20% de Crédito pro Kilua porque sem o tutorial dele de addEvent isso daqui não seria possível e 30% pro pessoal do Fox por terem me dado a idéia do script.
EDIT: Fiz um monstro q dá essa skill ao morrer, só que eu inovei um pouquinho e fiz ele tendo a skill, ou seja, vc tem que matar ele um numero X de vezes pra valer de verdade kkk A graça é que esse numero de X é inerente ao player (fiz por storage), então se um grupo de 10 pessoas for fazer e cada hora uma matar, serão (X+1) vezes no mínimo auhauhauh Só que como ele não dá loot e o unico premio dele é a skill pra quem matar X vezes, então o pessoal dá KS mesmo. Enfim, aproveitem:
creaturescripts\scripts\aegis.lua
local config = { storagekill = 19500, --- storage q conta a quantidade de kills storageaegis = 19332, --- storage da skill tempo = 5, -- tempo até ele renascer times = 2, --- quantidade de vezes que tenho que matar charges = 1, --- cargas da skill q ganha ao matar definitivamente effect1 = 66, -- efeito ao morrer effect2 = 10 --- efeito ao renascer } function onKill(cid, target, lastHit) local killed = getPlayerStorageValue(cid,config.storagekill) local skill = getPlayerStorageValue(cid, config.storageaegis) if isMonster(target) and getCreatureName(target):lower() == 'aegis' then if killed < config.times then doCreatureSay(target, "I'll be back mortal...", 20) doSendMagicEffect(getThingPos(target), config.effect1) setPlayerStorageValue(cid, config.storagekill, killed+1) addEvent(doSendMagicEffect, 1000*config.tempo, getThingPos(target), config.effect2) addEvent(doCreateMonster, 1000*config.tempo, "Aegis", getCreaturePosition(target), true) end if killed >= config.times then setPlayerStorageValue(cid, config.storagekill, 0) if skill < config.charges then doPlayerSendTextMessage(cid,22,"Congratulations, you just killed "..getCreatureName(target).." and earned Aegis of Immortal skill!") setPlayerStorageValue(cid, config.storageaegis, config.charges) end end end return true end
creaturescripts\scripts\login.lua registerCreatureEvent(cid, "aegis") if getPlayerStorageValue(cid, 19500) == -1 then setPlayerStorageValue(cid, 19500, 0) end creaturescripts.xml
<event type="kill" name="aegis" script="aegis.lua"/> monster\aegis.xml
<?xml version="1.0" encoding="UTF-8"?> <monster name="Aegis" nameDescription="Aegis, the immortal" race="blood" experience="0" speed="605" manacost="0"> <health now="100000" max="100000"/> <look type="287" head="0" body="0" legs="0" feet="0" corpse="0"/> <targetchange interval="2000" chance="15"/> <strategy attack="60" defense="5"/> <flags> <flag summonable="0"/> <flag attackable="1"/> <flag hostile="1"/> <flag illusionable="0"/> <flag convinceable="0"/> <flag pushable="0"/> <flag canpushitems="1"/> <flag canpushcreatures="1"/> <flag targetdistance="1"/> <flag runonhealth="0"/> </flags> <attacks> <attack name="melee" interval="2000" skill="210" attack="260"/> <attack name="lifedrain" interval="1000" chance="20" range="3" min="-550" max="-1050"/> <attack name="firecondition" interval="1000" chance="7" range="2" min="-800" max="-1200"> <attribute key="shootEffect" value="fire"/> <attribute key="areaEffect" value="yellowspark"/> </attack> <attack name="physical" interval="1000" chance="7" radius="6" target="0" min="-250" max="-750"> <attribute key="areaEffect" value="explosion"/> </attack> <attack name="death" interval="1000" chance="50" radius="5" target="0" min="-200" max="-500"> <attribute key="areaEffect" value="mortarea"/> <attribute key="shootEffect" value="suddendeath"/> </attack> <attack name="firefield" interval="1000" chance="4" radius="5" target="0"> <attribute key="areaEffect" value="explosion"/> </attack> <attack name="fire" interval="1000" chance="34" range="7" radius="7" target="1" min="-350" max="-850"> <attribute key="shootEffect" value="fire"/> <attribute key="areaEffect" value="firearea"/> </attack> <attack name="fire" interval="1000" chance="13" length="8" spread="0" min="-500" max="-1000"> <attribute key="areaEffect" value="explosion"/> </attack> <attack name="fire" interval="1000" chance="10" length="8" spread="3" min="-300" max="-1500"> <attribute key="areaEffect" value="firearea"/> </attack> </attacks> <defenses armor="165" defense="150"> <defense name="healing" interval="1000" chance="25" min="2000" max="3000"> <attribute key="areaEffect" value="blueshimmer"/> </defense> <defense name="speed" interval="1000" chance="10" speedchange="1800" duration="4000"> <attribute key="areaEffect" value="redshimmer"/> </defense> </defenses> <immunities> <immunity physical="0"/> <immunity energy="1"/> <immunity fire="1"/> <immunity poison="0"/> <immunity lifedrain="1"/> <immunity paralyze="1"/> <immunity outfit="1"/> <immunity drunk="1"/> <immunity invisible="1"/> </immunities> <voices interval="5000" chance="50"> <voice sentence="Poor innocent, I CAN'T DIE HAHAHAHAAHA"/> <voice sentence="Your soul will be mine!"/> <voice sentence="MUAHAHAHAAHAHA, I TOLD YOU" yell="1"/> </voices> </monster> OBS: edite ele porque eu coloquei ele muito forte, com muita vida e com muita recuperação de vida.
monster\monsters.xml
<monster name="Aegis" file="aegis.xml"/> -
doda4ever deu reputação a Adriano SwaTT em [Resolvido] [DUVIDA] Tem como fazer a arma so pode usar uma vocaçao ?Tem sim'
Em movements.xml' adicione esta tag'
<movevent type="DeEquip" itemid="5410" slot="shield" event="function" value="onDeEquipItem"/> <movevent type="Equip" itemid="5410" slot="shield" event="function" value="onEquipItem"> <vocation id="8" showInDescription="1"/> </movevent>
Lembrando, mude o Vocation id="8", onde está o 8 (em vermelho) para o ID da vocação que queira que use o item'
@@EDIT'
Para os demais que quiserem aproveitar o tópico...
Lembre-se de mudar também o "itemid="5410" para a ID do item que deseja receber essa função'
Abraços'
-
doda4ever deu reputação a GBDias em O que um OTserv precisa?Olá TibiaKing! Bom dia (ou tarde, ou noite) para todos.
Eu e mais um amigo estamos afim de investir em um servidor privado de tibia, estamos realmente em busca de um servidor de sucesso, com máquinas dedicadas e seriedade no trabalho. Acho que o primeiro passo é saber a opinião do público, pois são os pilares que irão fazer o OT ser auto-sustentável.
Então trago para vocês a seguinte questão: "O que você acha que um OTserv e sua equipe precisam oferecer para ter bons jogadores?"
Segue uma lista de perguntas que podem incentiva-los a pensar sobre o assunto.
EM RELAÇÃO A EQUIPE:
- Staff dedicada aos players, que sempre esteja disposta a ouvir, esclarecer dúvidas e solucionar problemas?
- GameMasters que realizem eventos demasiadamente?
- Tutores experientes que saibam tratar e respeitar os jogadores?
- Uma ideia que acho interessante é abrir portas para que os players (se quiserem), poderem também colaborar com ideias e trabalhos como quests e mapas, sendo recompensados com premium times e itens. (Acham que seria uma boa ou injustiça com os que não tem tais conhecimentos e ideias?)
EM RELAÇÃO AO SERVIDOR:
- Quais sistemas seriam essenciais e quais seriam fúteis, porém, agradaveis?
- Em relação ao mapa, custom, global, ou os dois? (Exemplo: Mapa custom com áreas interessantes do global, tais como "Zao, Gnomebase, Yalahar, Quirefang").
- Em relação a quests, seria interessante, mesmo em mapas custom, implementar quests conhecidas do global como "POI, Inquisition, Annihilator, Demon Oak, Wrath of the Emperor"?
- Sistemas de tasks ou missões side seriam interessantes?
- Cidades premium com monstros novos seria bom ou injustiça?
- Itens VIP?
Um obrigado adiantado a todos que responderem, a opinião de vocês é muito importante para nós!
-
doda4ever deu reputação a Gabrielk em Frag Look- Kills And Dead-PremiumOlá Galera, vim trazer para vocês o Frag Look - Kills And Dead... ele irá mostrar quantos você matou, e quantos você morreu. Vou Trazer em duas versões... a que mostra só o Kill e Dead, e outra que mostra quantos dias premium também existe na sua conta... Vamos lá..
Frag Look - Kills And Dead (Normal) :
Vá em creaturescripts/creaturescripts.xml : e adicione essa linha:
Após isso, crie um arquivo chamado KillsandDeath.lua e adiciona isso
Depois vá em login.lua e adicione isso :
Pronto Adicionado o Script de Kills And Death...
2º: para mostrar os premiums day(Lembre-se que só funciona em servidor que usa o premium como vip.) também coloque esse script :
é isso galera. eu não se quem de quem são os creditos, peguei de um servidor antigo que eu tinha aqui. Então valeu. Gostou ? REP+